Diff bw complex join and physical join
hi all
Can sumbody explain me the all the differences between complex join and physical join in the admin tool
Thanks
Shobhit
Hi,
Suggest you to go through this link. It may be helpful in detail.
http://st-urriculum.oracle.com/obe/fmw/bi/biee/r1013/bi_admin/biadmin.html
Thanks,
Vengatesh.
Similar Messages
-
What is the different between Logical complex join and Physical join?
hi,
Do somebody know what is the function different between logical complex join in BMM layer and physical join in physical layer?
Thanks.Thank you very much1
I understand their differentiation:
In the BMM Complex join (intelligent), means OBI picks the best way from possibly many different ways to join using physical join. FK join forces the same join always, which limits flexibility. -
Difference between physical join and logical join
Hi Gurus,
Can anyone tell me what is the difference between physical join and logical join
Thanks,
ChandraHi,
A physical join is at the physical layer and defines the join between two physical tables. Logical joins live at the BMM (logical) layer and define a join between two logical tables.
The important differentiation is that at the BMM layer you do not tell the OBIEE server how to do the join, you just tell it that there is a relationship between these two logical entities. When the server comes to this logical join it will use the information in the physical joins and decides how the two logical tables are joined together.
In BMM you use complex joins to establish which logical tables are joined which another, the OBI EE server will go to the physical level to search the physical join to make the query. You can also use physical joins in the BMM to override the join in the physical layer but only in very specific conditions.
If you also set complex join in the physical layer OBI EE won't be able to construct the physical query.
Hope this answers your question.
Award points if helpful.
Thanks,
-Amith. -
Logical joins vs Physical joins
Hello,
Can anyone tell me what is the difference between physical joins and logical joins. And how OBI Server treats the joins in relation to the Logical and Physical Layer.
I'm a little confused also with the place to configure the joins, since there is more than one option.
Thanks in advance,
SofianeWell actually no. The actual sql fired would depend on both the logical and physical joins. Logical join would be the entry point. Think of it this way. Business Model layer helps you designing a star schema(like a data warehouse) out of your source data. So logical joins are joins that you define on your star schema. But the star schema in itself derives its data from physical layer. So the Physical layer joins would be necessary as well. But if you have a star schema already in your physical layer the physical joins alone would suffice and logical joins are redundant but necessary.
Thanks,
Venkat
http://oraclebizint.wordpress.com -
Difference between inner join and outer join
1.Difference between inner join and outer join
2.wht is the difference in using hide and get crusor value in interactive.
3. Using join is better or views in writting program . Which is better.Table 1 Table 2
A
B
C
D
D
E
F
G
H
a1
b1
c1
1
1
e1
f1
g1
h1
a2
b2
c2
1
3
e2
f2
g2
h2
a3
b3
c3
2
4
e3
f3
g3
h3
a4
b4
c4
3
|--|||--|
Inner Join
|--||||||||--|
| A | B | C | D | D | E | F | G | H |
|--||||||||--|
| a1 | b1 | c1 | 1 | 1 | e1 | f1 | g1 | h1 |
| a2 | b2 | c2 | 1 | 1 | e1 | f1 | g1 | h1 |
| a4 | b4 | c4 | 3 | 3 | e2 | f2 | g2 | h2 |
|--||||||||--|
Example
Output a list of all flights from Frankfurt to New York between September 10th and 20th, 2001 that are not sold out:
DATA: DATE LIKE SFLIGHT-FLDATE,
CARRID LIKE SFLIGHT-CARRID,
CONNID LIKE SFLIGHT-CONNID.
SELECT FCARRID FCONNID F~FLDATE
INTO (CARRID, CONNID, DATE)
FROM SFLIGHT AS F INNER JOIN SPFLI AS P
ON FCARRID = PCARRID AND
FCONNID = PCONNID
WHERE P~CITYFROM = 'FRANKFURT'
AND P~CITYTO = 'NEW YORK'
AND F~FLDATE BETWEEN '20010910' AND '20010920'
AND FSEATSOCC < FSEATSMAX.
WRITE: / DATE, CARRID, CONNID.
ENDSELECT.
If there are columns with the same name in both tables, you must distinguish between them by prefixing the field descriptor with the table name or a table alias.
Note
In order to determine the result of a SELECT command where the FROM clause contains a join, the database system first creates a temporary table containing the lines that meet the ON condition. The WHERE condition is then applied to the temporary table. It does not matter in an inner join whether the condition is in the ON or WHEREclause. The following example returns the same solution as the previous one.
Example
Output of a list of all flights from Frankfurt to New York between September 10th and 20th, 2001 that are not sold out:
DATA: DATE LIKE SFLIGHT-FLDATE,
CARRID LIKE SFLIGHT-CARRID,
CONNID LIKE SFLIGHT-CONNID.
SELECT FCARRID FCONNID F~FLDATE
INTO (CARRID, CONNID, DATE)
FROM SFLIGHT AS F INNER JOIN SPFLI AS P
ON FCARRID = PCARRID
WHERE FCONNID = PCONNID
AND P~CITYFROM = 'FRANKFURT'
AND P~CITYTO = 'NEW YORK'
AND F~FLDATE BETWEEN '20010910' AND '20010920'
AND FSEATSOCC < FSEATSMAX.
WRITE: / DATE, CARRID, CONNID.
ENDSELECT.
Note
Since not all of the database systems supported by SAP use the standard syntax for ON conditions, the syntax has been restricted. It only allows those joins that produce the same results on all of the supported database systems:
Only a table or view may appear to the right of the JOIN operator, not another join expression.
Only AND is possible in the ON condition as a logical operator.
Each comparison in the ON condition must contain a field from the right-hand table.
If an outer join occurs in the FROM clause, all the ON conditions must contain at least one "real" JOIN condition (a condition that contains a field from tabref1 amd a field from tabref2.
Note
In some cases, '*' may be specified in the SELECT clause, and an internal table or work area is entered into the INTO clause (instead of a list of fields). If so, the fields are written to the target area from left to right in the order in which the tables appear in the FROM clause, according to the structure of each table work area. There can then be gaps between table work areas if you use an Alignment Request. For this reason, you should define the target work area with reference to the types of the database tables, not simply by counting the total number of fields. For an example, see below:
Variant 3
... FROM tabref1 LEFT [OUTER] JOIN tabref2 ON cond
Effect
Selects the data from the transparent database tables and/or views specified in tabref1 and tabref2. tabref1 und tabref2 both have either the same form as in variant 1 or are themselves join expressions. The keyword OUTER can be omitted. The database tables or views specified in tabref1 and tabref2 must be recognized by the ABAP-Dictionary.
In order to determine the result of a SELECT command where the FROM clause contains a left outer join, the database system creates a temporary table containing the lines that meet the ON condition. The remaining fields from the left-hand table (tabref1) are then added to this table, and their corresponding fields from the right-hand table are filled with ZERO values. The system then applies the WHERE condition to the table.
Left outer join between table 1 and table 2 where column D in both tables set the join condition:
Table 1 Table 2
A
B
C
D
D
E
F
G
H
a1
b1
c1
1
1
e1
f1
g1
h1
a2
b2
c2
1
3
e2
f2
g2
h2
a3
b3
c3
2
4
e3
f3
g3
h3
a4
b4
c4
3
|--|||--|
Left Outer Join
|--||||||||--|
| A | B | C | D | D | E | F | G | H |
|--||||||||--|
| a1 | b1 | c1 | 1 | 1 | e1 | f1 | g1 | h1 |
| a2 | b2 | c2 | 1 | 1 | e1 | f1 | g1 | h1 |
| a3 | b3 | c3 | 2 |NULL|NULL|NULL|NULL|NULL|
| a4 | b4 | c4 | 3 | 3 | e2 | f2 | g2 | h2 |
|--||||||||--|
Regards
Prabhu -
Nested loop, merge join and harsh join
Can any one tell me the difference/relationship between nested loop, harsh join and merge join...Thanx
Check Oracle Performance Tuning Guide
13.6 Understanding Joins
http://download-west.oracle.com/docs/cd/B19306_01/server.102/b14211/optimops.htm#i51523 -
hi friends,
how to use inner join and outer join methods in abap. pls explainyou have to code them
Seriously, I suggest you take an ABAP class, it's out of the scope of this forum to tech you how to program joins.
Markus -
Hi,
I need to join three tables, based on some conditions (EKPO, EKBE and EKKN Note: All PO line items from EKPO will have a movement associated in the EKBE Table. Capture all PO line items where no matches found in the EKPO-EKBE join)
for the above requirement shall I write my query like this?
SELECT ekpo~ebeln
ekpo~ebelp
ekpo~loekz
ekpo~txz01
ekpo~matnr
ekpo~bukrs
ekpo~werks
ekpo~menge
ekpo~meins
ekpo~knttp
ekbe~vgabe
ekbe~bwart
ekbe~menge
ekbe~dmbtr
ekbe~shkzg
ekkn~sakto
ekkn~kostl
ekkn~ps_psp_pnr
INTO CORRESPONDING FIELDS OF TABLE i_podata
FROM ekpo LEFT OUTER JOIN ekbe ON ekbeebeln = ekpoebeln AND
ekbeebelp = ekpoebelp
INNER JOIN ekkn ON ekknebeln = ekpoebeln AND
ekknebelp = ekpoebelp
WHERE ekpo~werks IN s_werks AND
ekpo~ebeln IN s_ebeln.
Shall I use both Outer Join and Inner join in one Query?
Please correcte me.
Thanks
Frank RexHi,
You can use both inner join and outer join in the same select statement.
Ensure first all the inner joins between tables are declared and put the left outer join at the end.
Some sample code for your reference:
SELECT
AVBELN AKUNNR ABSTNK ABSTDK AVKORG AVTWEG AAUART AKNUMV
BPOSNR BMATNR BWERKS BSPART BLGORT BKZWI1
SUM( BKWMENG ) AS KWMENG DBZIRK D~VKGRP
EDISPO EPRCTR
FROM VBAK AS A INNER JOIN VBAP AS B ON AVBELN EQ BVBELN
INNER JOIN VBPA AS C ON CVBELN EQ BVBELN
INNER JOIN KNVV AS D ON DKUNNR EQ AKUNNR
AND DVKORG EQ AVKORG AND DVTWEG EQ AVTWEG
LEFT OUTER JOIN MARC AS E ON E~MATNR EQ
BMATNR AND EWERKS EQ B~WERKS
INTO CORRESPONDING FIELDS OF TABLE IT_ORDERS
WHERE A~VKORG IN SO_VKORG
AND A~VTWEG IN SO_VTWEG
AND A~KUNNR IN SO_KUNNR
AND A~ERDAT IN SO_ERDAT
AND A~AUART IN ('ZFOR','ZROR','ZEOR','ZDXR','ZXOR','ZRM1','ZGOR','ZSOR')
AND B~MATNR IN SO_MATNR
AND B~WERKS IN SO_WERKS
AND B~SPART IN SO_SPART
AND B~ABGRU EQ SPACE
AND A~LIFSK EQ SPACE
AND A~FAKSK EQ SPACE
AND B~VSTEL IN SO_VSTEL
AND B~LGORT IN SO_LGORT
AND C~KUNNR IN SO_SHIP
AND C~PARVW EQ 'WE'
AND D~VKGRP IN SO_VKGRP
AND D~BZIRK IN SO_BZIRK
AND B~LGORT NE '0950'
GROUP BY AVBELN AKUNNR ABSTNK ABSTDK
AVKORG AVTWEG AAUART AKNUMV B~POSNR
BMATNR BWERKS BSPART BKZWI1 D~BZIRK
DVKGRP BLGORT EDISPO EPRCTR E~MATGR.
Lakshminarayanan.
P.S.Mark all helpful answers for points. -
Both equii join and natural join are equall.will both display same output
both equii join and natural join are equall.will both display same
output?Hi ,
What is preventing you to do a small test and check yourself?
See the below link.
http://psoug.org/reference/joins.html
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> CREATE TABLE parents (
2 person_id NUMBER(5),
3 adult_name VARCHAR2(20),
4 comments VARCHAR2(40))
5 PCTFREE 0;
Table created.
SQL>
SQL> CREATE TABLE children (
2 parent_id NUMBER(5),
3 person_id NUMBER(5),
4 child_name VARCHAR2(20),
5 comments VARCHAR2(40))
6 PCTFREE 0;
Table created.
SQL>
SQL> INSERT INTO parents VALUES (1, 'Dan', 'So What');
1 row created.
SQL> INSERT INTO parents VALUES (2, 'Jack', 'Who Cares');
1 row created.
SQL> INSERT INTO children VALUES (1, 2, 'Anne', 'Who Cares');
1 row created.
SQL> INSERT INTO children VALUES (1, 1, 'Julia', 'Yeah Right');
1 row created.
SQL> INSERT INTO children VALUES (2, 1, 'Marcella', 'So What');
1 row created.
SQL> COMMIT;
Commit complete.
SQL>
SQL> SELECT adult_name, child_name
2 FROM parents NATURAL JOIN children;
ADULT_NAME CHILD_NAME
Jack Anne
Dan Marcella
SQL> select adult_name,child_name from parents a, children b
2 where a.person_id=b.person_id;
ADULT_NAME CHILD_NAME
Jack Anne
Dan Julia
Dan Marcella
SQL> ed
Wrote file afiedt.buf
1 select adult_name,child_name from parents a, children b
2* where a.person_id=b.parent_id
SQL> /
ADULT_NAME CHILD_NAME
Dan Anne
Dan Julia
Jack Marcella
SQL>Regards,
Avinash -
Use of complex join in BMM and Physical Join in Physical layer ?
Hi All ,
Why we need to use complex join in BMM layer not the Physical Join ?
Why we need to use Physical Join in Physical layer not Complex join ?
thanks in advanceHi,
A physical join is at the physical layer and defines the join between two physical tables.
Logical joins live at the BMM (logical) layer and define a join between two logical tables.
The important differentiation is that at the BMM layer you do not tell the OBIEE server how to do the join,
you just tell it that there is a relationship between these two logical entities.
when the server comes to this logical join it will use the information in the physical joins and decides how the two logical tables are joined together.
thanks,
pramod. -
Logical And Physical Joins Of SH_PartTwo.rpd provided by oracle OBIEE
Hi,
I am new the OBIEE tool.After downloading SH_PartTwo.rpd .Planned to recreate the physical and logical joins.
If any one has already tried this, kindly explain why we are creating Alias tables of (SALES,TIMES)and joining COSTS to them instead of directly joining to Sales fact table. Below is the table structure.My question again,previously in SH.rpd we were joining Sales fact with other dimensions.If I need cost data then why should'nt I join cost with sales.
Thanks for your cooperation in advance.
Regards,
Sreekanth
Costs Sales Times Customers Countries Products Promotions Channels
Timeid Timeid Timeid
Productid Productid Productid
Promotionid Promotionid Promotionid
Channelid Channelid Channelid
Custid Custid
Countryid Countryid
Unitcost Amount_soldWell don't know the example anymore ;)
But you normally will make aliasses to reuse the object.
So if you have a time dimension, and you have all kind of fields, like date_sold, date_bought, date_paid...
Now if you connect those dates directly to the time dimension, then you can get very odd reports... if you use aliasses, then the times have nothing to do with each other...
So it is always better to use aliasses... you never know if you need a table only once.. -
Equal Join and Outer Join in OBIEE
Hello expert,
I think the default join in OBIEE is Outer Join. So no matter what join conditions that I specify on the physical layer, the result that I get in the presentation layer is still outer join.
How to specify the equal join or inner join in Business and Logical layer?Hello,
Thank you for your reply. However it does not work. I got the following message:
[nQSError: 32005] The object "Fact - Fruit" bc if type 'LOGICAL TABLE SOURCE': is missing a foreign key or a complex join in the join graph.
The situation that I have is:
Fact table: "Fact - Fruit"
List of value table (look up table): "dim_list_of_values"
I am only interested in the type in the "dim_list_of_values" table where equals to "Apple". So I only want to join the "Fact - Fruit" and "dim_list_of_values" with those records with "Apple" type.
It sounds to me that I am unable to define a freign key. -
Hi
I would like to know if there is difference between bind join end hash join.
For example If I write sql code in My query tool (in Data Federator Query server administrator XI 3.0) it is traduced in a hashjoin(....);If I set system parameters in right way to produce bind join, hashjoin(...) is present again!
how do i understand the difference?
byeQuery to track the holder and waiter info
People who reach this place for a similar problem can use the above link to find their answer
Regards,
Vishal -
Inner join and outer join in infosets
hi everyone,
i have a doubt in infosets...
when and why we use inner and outer joins(right outer join and left outer join) for infoset
please give a real time scenario........
Thanks in advance.
Bye.Hello,
Inner join:
For example, the requirement is to show all sales documents where you have delivery exists. In this case, you join both sales ods and delivery ods in a infoset as inner join. This will match the record against the reference documents and pull only matched records.
Outer Join:
Suppose you want to pull all billing/invoice details along with their FI documents related data in a report. Assume that always there might be a situation that invoice exists but not posted to FI, however, you want to have all billing documents details either it has FI document or not. In this case, you link both Billing data and FI document data in a outer join. This will pull all invoices data either FI document exists or not. Other words, you want to show one side of data always but adding additional details from differenent source if data exists.
Hope, it clarifies your doubt. Let me know if any questions.
Thanks
Viswa -
SYNTAX "INNER JOIN and OUTER JOIN"
Hi Experts,
I think LEFT JOIN,INNER JOIN syntax is in ANSI.
I know that Oracle has got its own alternate(+) operator to serve the purpose.
Please tell me whether INNER JOIN,OUTER JOIN,LEFT JOIN,LEFT OUTER JOIN,RIGHT OUTER JOIN these syntaxes present in ORACLE 8I.
If not in 9i Or highr versions are they existing?
Thanks in advance,
Ananth
nullHi,
8i has inner join. (+) syntax supports LEFT or RIGHT OUTER JOIN.
FULL OUTER JOIN is supported in 9i, which introduces the JOIN keyword.
Herman
Maybe you are looking for
-
Https through load balancer breaks declarative security
Hello, My desired setup is for a Jboss cluster serving requests behind a load balancer. Also I intend to use declarative security on the deployed units and have ssl client side authentication. I need someone to please confirm/deny the following state
-
"........iMac is not supported on the iPhone
I have an older iphone - 2 I think. When I try to connect the bluetooth I receive a message on the iphone, ".........iMac is not supported on the iPhone" Does anyone have a solution. Both the iphone and imac can find each other, the iphone just wil
-
ClickTAG: More difficult than I'm making it?
Hello awesome forum folks. I've created plenty of banner ads in my time but am having trouble with my first AS3 clickTAG code. import flash.events.MouseEvent; clicks.addEventListener(MouseEvent.CLICK, boomShaka); function boomShaka(event:MouseEvent)
-
Unable to delete a blank iMessage
Recreate what happened. Last Monday about to send a text message when I received one. One being sent stalled (red exclamation mark). I resent then noticed it kept reappearing in iMessage. I repeatedly tried to delete it but it keeps returning. I
-
Wrong alignment on 8 by 10, white space on 4 by 6
My machine prints landscape instead of portrait view on 8 by 10 paper; cuts off pic, leaves white space on borderless 4 by 6 paper.