Join physical OBIEE 11 g condition
Team
How to create a physical join complex which has a substr function in OBIEE 11 g RPD.
Here's the scenario... A custom Dimension table has monthwid (201407,201408..) and the customer number. The fact table has created date (20140712, 20140715...) and the customer number. We need to create a join of physics as
Dimension table. Customer number = fact table. Table.monthwid number AND Customer Dimension = substr (date of facttable.created, 1, 6).
When I tried it, get the nqserror generic 27002. Is it more to create a join in the above scenario.
Thank you very much
Concerning
Bottom
Hi there,
I just see that the syntax is off. There "substring (... of... of...)" as follows:
Cast ("01 - Sample App Data (ORCL)" ".." ") "" "BISAMPLE '." " ZZZZ-SRORDERS ".» (GUID' as varchar (10))
=
Substring (cast ("01 - Sample App Data (ORCL)" ".." ")) "" "BISAMPLE '." " ZZZZ-SCORDERS ".» ((GUID' as varchar (10)) 0-6)
Tags: Business Intelligence
Similar Questions
-
Join physical &; complex join
Hello
I'm little confusion when join physical use and join complex. Can we create a complex join in physical layer? If so, when it is used? and can we use physical join in layer MDB? If so when should I use? Can you please give me some examples.can we use physical join in layer MDB?
You can also use physical joins in MDB to override the join in the physical layer, but only under very specific conditions.
concerning
Debo -
Controlling the path of the join in OBIEE
I have a dimension table that is the "hub" of our physical data model.
This dimension is joined to 4 different fact tables.
I have a query/chart from a previous version of project (everything worked very well) referenced only 2 of these fact tables.
Now that 2 more tables of facts were brought in the image for our next version, the query that worked great now is to join all the tables facts 4 (through the central dimension) even if
I need still to join the tables of 2 original facts. I'm not selecting or filtering of all 2 new fact tables or their associated dimensions (except the central dimension - who share all the facts)
in this query. Yet, all the facts 4 tables are called. Not sure why obiee works this way.
I need to OBIEE do not invoke a join with a fact table, if no facts from the fact table is used in the query. The join is affecting counties in the output and charges are incorrect.
Looks like you have mapped them physically.
Go to the sources of logical sources IE 2nd logical table.
-
Hi, I'm new to OBIEE 10 G.
I have a DimA (dimension), memoirs (fact). I traced the foreign key relationship between DimA and briefs on DimA.A = FactA.A MDB, the relationship is internal and greyed out, so I can't change it to outer join.
So in the report answers, it only shows data for the inner join of the two tables. What I want is to show all items in DimA and associated items FactA or 0 for those not related.
I posted a similar question here before https://forums.oracle.com/thread/2596618
But I can't always change the relationship (still dimmed) even though I opened a deposit in offline mode.
And what I think is is an option in responses to dynamically control the join (internal or external). For example, sometimes I want to show only paired DimA and FactA, sometimes all the DimA and related FactA or 0, so that I do not change the repository MDB every time if the requirement is changed.
What is the best practice in this case?
Thank you.
Try opening the SPR OFFLINE, or to open in mode online and starting then other CASES it would be gray.
If you have trouble sending the RPD to sveerava at gm
-
Hi all
I am able to join the 2 reports using "Filter is based on the results of the analysis another" based on e_id and m_timestamp to build the following query report
Select a.e_id, count (distinct a.m_timestamp) of
RAW_DATA has)
SELECT count (*), e_id, m_timestamp of raw_data
Group of e_id, m_timestamp
After having count (*) > b 1).
where a.eq_id = b.e_id and a.m_timestamp = b.m_timestamp
A.e_id group
But I want to eliminate the join and generate a report based on this (to improve performance)
Select b.e_id, count (*) from
(
SELECT count (*), e_id, m_timestamp of raw_data
Group of e_id, m_timestamp
After having count (*) > b 1).
B.e_id group
Which gives the same result but with joins removed - can someone help how to implement this in OBIEE 11 g?
Try something like
Select e_id, count (distinct m_timestamp) of
RAW_DATA
view count (1) > 1
E_id group
If brand aid
-
Hello
If we have a table A and B with the common name column and a table stores the name value to upper case and B table stores the values of the names in lowercase. So how we can join these two tables. In physics, we can convert the column with the name in lowercase (B.name) UPPER and join this straight path in the physical layer using foreign key join: B.SID = UPPER (B.Name). Am I wrong?
Thank you
XYZYes you are right.
for example
I have the emp table and also a table name as emp8
emp8 as tiny ename.
the example query will be like this
Select e8.ename, e.empno in emp e, e8 emp8 where e.ename = upper (e8.ename) -
filter on table physics obiee - obiee 10g
I have an obligation to filtering some rows in a table in the physical layer.
That's what I did. On the general tab of the physical table, I changed the Type of the "SELECT" Table and added a select statement with all the columns in this table and included a where clause for the filter clause.
I want to confirm if this approach stops all functionality in my deposit. Please notify.It works very well, but it is converted into opaque mode which can can cause degradation of performance. Best filter using where clause MDB LTS.
-
Hello
I'm new to tool obiee.
My dimension table is composite primary keys (3 keys - suppose that the employee id, employee ssn, phone number)
and my fact table (2 key - id of the employee, the employee ssn)
so, how can we do physical to join physical layer?
Do we need to create 2 tables aliases and join my fact table?
or, something else I can use expressions in the physical... join physical diagram generator?831909 wrote:
@ Ashish... I used the expression builder. And created joins as much as possible of the fact table dimension table. Don't you think it's the right approach?The problem is that the BI server will always use all even if you do not want it. You MUST create aliases when you wish to join for different purposes, Deepaks example is a good thing. If you put the two joints of the same table, you would never get of fact records where the 2 dates are the same.
-
Administration tool of BI - physical foreign key corresponding MDB logical join?
Hello
Can anyone explain why when you create a join (physical foreign key) in the physical layer for example
Then view the corresponding logic join in the MDB layer it is the other way round? that is the "one" table in appears on the right and the "an array much ' on the left.
It seems fair that logically, I would have expected the "one" table will appear on the left and the "table several" on the right as it does in the physical layer?
Kind regards
Tom Rowe
Hello
Thanks for your answer Yes, indeed the cardinality is the important thing here, and the query gives the expected results. However also personally find this confusion not to mention that I have since found it also seems to be incompatible, that is. some logical joins are shown round track that I know and others aren't, I redefine the joins that do not have the table 'a' appearing on the left and the "a table much" appearing on the left. This also has the advantage of showing all the table 1 in the form of tables table 2 as fact in the Manager of joint tables and dimension.
Appears not to be a minor bug / irritation me may therefore raise a SR with Oracle.
Kind regards
Tom Rowe.
-
Hello
I'd like to get the code from location_lookup table based on a descriptive text of the location_source table, but this would require a join by using a like condition. There are also several research location with unique codes, but the requirement would be to select the first code:
create the table location_source
(code number,
Description varchar2 (100)
);insert into location_source values (", 'visit London');
insert into location_source values (", 'flight Paris 9,30');
insert into location_source values (", 'baggage 20kg Hong kong');
insert into location_source values (", 'check out 6.30');
insert into location_source values (", 'new york, 23 Jul');
insert into location_source values (", 'jy688 of flight sydney');create the table location_lookup
(code number
location_lookup varchar2 (10)
);insert into location_lookup values (001, "London");
insert into location_lookup values (002, "London");
insert into location_lookup values (003, 'Paris');
insert into location_lookup values ('004, Hong Kong");
insert into location_lookup values (005, 'Paris');
insert into location_lookup values ('006, New York");The SQL looks like this:
Select s.*, min (l.code), l.location_lookup
of location_source s, locaction_lookup l
and SUPERIOR (s.description |) "%') as superior (l.location_lookup |) » %')
Group of s.*, l.location_lookup
Power required:
Code Description Code Location_Lookup check in London 001 London Paris 9:30 flight 003 Paris baggage 20kg Hong kong 004 Hong Kong starting at 6:30 New york 23 Jul 006 New York City flight sydney jy688 You try to use Oracle Text.
How to prepare the SCOTT to use Oracle Text:
SQL> SQL> SHOW USER USER is "SYS" SQL> SQL> GRANT ctxapp TO scott; Grant succeeded. SQL> GRANT EXECUTE ON CTXSYS.CTX_CLS TO scott; Grant succeeded. SQL> GRANT EXECUTE ON CTXSYS.CTX_DDL TO scott; GRANT EXECUTE ON CTXSYS.CTX_DOC TO scott; GRANT EXECUTE ON CTXSYS.CTX_OUTPUT TO scott; GRANT EXECUTE ON CTXSYS.CTX_QUERY TO scott; GRANT EXECUTE ON CTXSYS.CTX_REPORT TO scott; GRANT EXECUTE ON CTXSYS.CTX_THES TO scott; GRANT EXECUTE ON CTXSYS.CTX_ULEXER TO scott; Grant succeeded. SQL> Grant succeeded. SQL> Grant succeeded. SQL> Grant succeeded. SQL> Grant succeeded. SQL> Grant succeeded.
Now the test itself:
SQL> SHOW user USER is "SCOTT" SQL> --My database version. SQL> SELECT * FROm v$version; BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production PL/SQL Release 11.2.0.1.0 - Production CORE 11.2.0.1.0 Production TNS for Linux: Version 11.2.0.1.0 - Production NLSRTL Version 11.2.0.1.0 - Production SQL> SELECT * FROM location_source; CODE DESCRIPTION ---------- ---------------------------------------------------------------------------------------------------- check in london flight Paris 9.30 baggage allowance 20kg Hong kong check out 6.30 new york 23rd Jul flight jy688 sydney 6 rows selected. SQL> SELECT * FROM location_lookup; CODE LOCATION_L ---------- ---------- 1 London 2 London 3 Paris 4 Hong Kong 5 Paris 6 New York 6 rows selected. SQL> CREATE INDEX location_source_idx ON location_source(description) INDEXTYPE IS CTXSYS.CONTEXT; Index created. SQL> EXEC DBMS_STATS.GATHER_TABLE_STATS(USER, 'LOCATION_SOURCE', cascade=>TRUE); PL/SQL procedure successfully completed. SQL> ed Wrote file afiedt.buf 1 SELECT ls.code, 2 ls.description, 3 MIN(ll.code) new_code, 4 ll.location_lookup 5 FROM location_source ls 6 LEFT OUTER JOIN location_lookup ll 7 ON contains(ls.description,ll.location_lookup)>0 8 GROUP BY ls.code, 9 ls.description, 10* ll.location_lookup SQL> / CODE DESCRIPTION NEW_CODE LOCATION_L ---------- ---------------------------------------------------------------------------------------------------- ---------- ---------- check in london 1 London baggage allowance 20kg Hong kong 4 Hong Kong check out 6.30 new york 23rd Jul 6 New York flight Paris 9.30 3 Paris flight jy688 sydney 6 rows selected.
-
Join external condition bug/feature when you use a RC?
First I picked up on this bug/feature in an article in the blog of Armstrong ([http://learndiscoverer.blogspot.com/2008/05/using-case-to-solver-outer-join-issues.html])
It seems that when you use an OR condition in Disco as well as 10 g, it ignores the join on the table conditions...
I've included the two reports the SQL code to illustrate my point:
Here is the SQL code generated when I agree with the point of view, you will notice the outer join (i.e. "(+)" ")
SELECT O100288. UNIQUE_ID, O100291. UNIQUE_ID
OF ODSTHING. TABLE1: O100288, ODSTHING. O100291 FROM TABLE2
WHERE ((O100291. UNIQUE_ID = O100288. UNIQUE_ID (+)))
;
Here's what happens if I simply add that a condition is not null. Notice the outer join on the 'IS NOT NULL' which allows to do nothing
SELECT O100288. UNIQUE_ID, O100291. UNIQUE_ID
OF ODSTHING. TABLE1: O100288, ODSTHING. O100291 FROM TABLE2
WHERE ((O100291. UNIQUE_ID = O100288. UNIQUE_ID (+))) AND (O100288. UNIQUE_ID (+) IS NOT NULL)
;
This is what happens when I have AND the same condition with himself, he remains outside joined
SELECT O100288. UNIQUE_ID, O100291. UNIQUE_ID
OF ODSTHING. TABLE1: O100288, ODSTHING. O100291 FROM TABLE2
WHERE ((O100291. UNIQUE_ID = O100288. UNIQUE_ID (+))) AND (((O100288. UNIQUE_ID (+) IS NOT NULL AND O100288. UNIQUE_ID (+) IS NOT NULL)))
;+
Here's what happens if I have the same CONDITION with himself. MAGIC! The outer join disappears!
SELECT O100288. UNIQUE_ID, O100291. UNIQUE_ID
OF ODSTHING. TABLE1: O100288, ODSTHING. O100291 FROM TABLE2
WHERE ((O100291. UNIQUE_ID = O100288. UNIQUE_ID (+))) AND (((O100288. UNIQUE_ID IS NOT NULL OR O100288. UNIQUE_ID IS NOT NULL)))
;
Is it the way it is supposed to work? If it is then I don't see any trace of it in the documentation ([http://download.oracle.com/docs/html/B13915_04/conditions.htm])
Is it just a useful bug?
What people think about its use?
Published by: user4404031 on Sep 12, 2008 08:23Hello
It is documented (http://download.oracle.com/docs/html/B13916_04/conditions.htm#sthref854) that the discoverer does not use outer joins with IN and OR conditions. But the implications of this are not stated. The documentation never tries to explain the underlying SQL.
Rod West
-
Hi Experts,
I have a few questions about the complex joins
1 > first when import us the tables in the physical layer, we joins from FK for the tables according to our requirement so layered MDB, we create new business model then again why to do complex layer of MDB already join there are joins between the tables in the physical layer , the scenarios that we do the complex join if we do not the complex join what will happens.
2 > if we FK join instead of complex layer MDB join what will be the result.
Thanks in advance,Hello
We have two joins in OBIEE a foreign key join and join another complex. Above all 99% of the cases we use foreign key join physical layer.we use a complex join in a phycical layer mainly in the three scenarios.
(1) when it is extended to the join conditions.
(2) when we join a key of a table column with a column not key in the other table.
(3) where the operator is other than the equal to operator.In these 3 situations, we use a complex join in the physical layer.
Then we're we have already joined in the physical layer then what is the need to create complex joins in right MDB layer.
The answer to this question is each user runs a report that will generate the logical sql query our OBIEE includes only logic sql query this logical query generated sql logic-based attend the MDB layer.
Based on this logic joins only it will create more sql query optimization. And one of the reasons for creating logical joinsIf we want to specify table conduct is possible only Suiloidi complex join layer MDB.
and if we want to specify the type of join is possible only Suiloidi complex join layer MDB
and if we want to specify cordinality is possible only Suiloidi complex join layer MDBand another is my tool is not able to identify the facts and dimensions because it has no intelligence, we need to incorporate the intelligence giving logical joins only identifies the facts and dimensions.
We must therefore create logical joins layer MDB...Give me like, if you aresatisified with my post.
Thank you
Menama SAI
-
What is the logical application of diff b/w and the physical query?
Thank you in advanceOBIEE logical query is how you query the BI server, presentation services sends logical SQL to the BI server, you can also write your own using JDBC, pull BI server using ODI etc.
The BI Server engine takes this logical query and querie (s) phyiscal wrote (several) to satisfy the logical request, depeninding on how your layer MDB and physics is configured. There are a number of rules the BI server evaluates before deciding on the physical request more appropriate to generate rules include joins physical, tales of the aggregates / hierarchy levels and so on.
Hope this helps,
Good luck with the interview :-)Alastair
-
Confused about the complex joins in joins Manager
Hello
I know that when we create join in the physical layer, we must use "foreign key" this icon,.
and when we need create joins in the MDB layer, you need to use 'new joint complex. "
so, what is the purpose of the complex joined in the Manager of joins? I'm so confused on this subject...
Kind regards
AnneHello
Please see the below ahttp://obiee11gqna.blogspot.com/2011/02/interview-questions-on-joins-in-OBIEE.html
---> complex join is that join in join where as two tables has no way join foreign at this complex time key is used
--> Join complex:-join complex are used in the physical layer between two tables where ever who do not key primary and forgin key relationship.
Foregin Key:-using the forgin key we can define the join between two tables. joins between is 1:M or M:M., if we want to define: many relationships we use the bridge tables.
Thank you
Deva
Published by: Devarasu on October 18, 2011 10:27
-
outer join does not give the expected results (missing documents)
Hello
I have problem with outer join in OBIEE 10 g.
I'm testing it on the model of simplified database
STAT table with some statistics of TYPEs
stat_date, id_type, num
..
..
26/03/2003, 20: 1
26/03/2003, 21: 1
26/03/2003, 23: 1
26/03/2003, 24, 1
26/03/2003, 25, 1
..
27/03/2003, 22, 1 <-different date here
..
..
Table TYPES
ID_type
..
..
20
21
22
23
24
25
..
..
Physical model
STAT >-TYPES
AM.
F1 (only Digital STAT table column (agg. County))
D1 (STAT_DATE of the STAT table column only)
D2 (source TYPES)
D1 - inner join - < F1
D2 - left outer join - < F1
I would like to create simple report filtered by date with number of each type.
I want to get this result
ID_type County
.. ..
.. ..
20 1
21 1
22 null
23 1
24 1
25 1
.. ..
.. ..
But I get this
ID_type County
.. ..
.. ..
20 1
21 1
23 1
24 1
25 1
.. ..
.. ..
ID_type 22 is missing
!!!
I NORMALLY GET RESULT ONLY IF I DELETE RECORD ' 27/03/2003 22' OF MY FACT TABLE.
!!!
I have the filter on the date column D1
STAT_DATE = 26/03/2003 or STAT_DATE is null
BI Server running this SQL query
Select distinct D1.c1 as c1,
D1. C2 C2
Of
(select count (T17840. NUM) in c1.
T17867.ID_TYPE C2
Of
Left outer join of TYPES T17867
STAT T17840 on T17840.ID_TYPE = T17867.ID_TYPE
where (T17840. STAT_DATE in (TO_DATE ('2003-03-26', 'YYYY-MM-DD')) or T17840. STAT_DATE is null)
T17867.ID_TYPE group
) D1
Can you give me some advice?
Thank youHi cardel,
I think that you can achieve your goal if you build a dimension of the array STAT form, you can create a table Alias in the physical layer and then to join the table of facts (external to the left). In this way, I think that you can solve your problem.
Let me know.
Kind regards
Gianluca
Maybe you are looking for
-
helping you choose an imac of 2015
Hi all I looking for a new or slightly used imac 27 "and trying to do a good price by value of choice. My main uses are Photoshop, video editing, and AE. NOT a gamer. I need this machine to last at least 5-6 years to justify the expense. My options:
-
Instability of the virus that causes BaseFlash Extension
First: Windows 7 Home Premium SP 1; 64 bit; Firefox (JUST updated) v28.0. Already ran Norton Security Online & MalwareByte Anti-Malware into a comprehensive analysis, to no result *. On with the problem: For a couple of months already, some sites in
-
Safari began opening in a window of minimum size.
After opening, I can expand to view full screen, but the display of open windows is not available any longer. This is a recent development. I am using iOS 10.9.5 Thank you.
-
Missing satellite C870 - 11G - "SM BUS controller driver" for Win 7 64 bit
Good afternoon After extensive research of the forums, I was unable to find a solution so far. A few months ago, after the demise of his previous Satellite, my friend has acquired a Satellite C870 - 11G on Windows 7 (64-bit). She acquire the machine
-
Have windows xp pro with sp3, but can't and would like to reinstall the original windows disc but I need to know if I download Service Pack 3 not that also include the sp2?