RE: Join complex

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 joins

If 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 MDB

and 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

Tags: Business Intelligence

Similar Questions

  • pl/sql tables multiplt joins complex

    Hi, can someone please help me to write the query to the following output.

    I have 3 tables say TABLE A, TABLE 1, TABLE 2 and the columns and data are,

    TABLE A:

    ID-NAME - AGEID
    a1-----------------abcd1---------------1
    a2-----------------abcd2---------------2
    A3 - abcd3 - null
    a4-----------------abcd4---------------1
    a5-----------------abcd5---------------2

    TABLE 1:

    ID-CHAMP11 - FIELD12
    a1-------------------10------------------------c1
    a4-------------------40------------------------c4

    TABLE 2:

    ID - FIELD21 - MATIERE22
    a2--------------------20-----------------------c2
    a5------------------- 50-----------------------c5

    and finally the output should be as follows,

    ID-NAME-AGEID - FIELD1 - FIELD2
    a1-----------------abcd1--------------------1-----------------------10------------------------c1
    a2-----------------abcd2--------------------2-----------------------20------------------------c2
    a3-----------------abcd3-------------------null---------------------null-----------------------null
    a4-----------------abcd4-------------------1-----------------------40-------------------------c4
    a5-----------------abcd5------------------ 2-----------------------50-------------------------c5

    Description: in the tables above, the TABLE is the primary table with ID as the primary key and AGEID is a normal column.

    then in the output, if the value of the ageid is 1 then the additional fields in the output must come from TABLE 1
    and if the ageid 2 then the additional fields in the output must come from TABLE 2
    and if the ageid is 3 then additional fields in the output should come from TABLE 3 and so on...

    thanking you,
    MDR

    Hello

    user10730611 wrote:
    ...
    but I have something more to do. in fact, these types of data from column in table1 and table2 are different.
    I so all converted to a varchar2 to display output.

    Exactly; convert anything that is not already a string in a string.

    For example:

    ,     CASE     ta.ageid
              WHEN  1          THEN  TO_CHAR (t1.field1)            -- t1.field1 is a NUMBER
              WHEN  2          THEN  TO_CHAR (t2.field1, 'DD-Mon-YYYY')  -- t2.field1 is a DATE
         END     AS field1                                              -- the output column field1 is a VARCHAR2
    
  • 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
    Anne

    Hello
    Please see the below a

    http://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

  • 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

  • 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)

  • Apply the sequence as a logical column

    I need to add a logical column in my table of facts or the dimension that generates a unique ID for each row selected in the answers. I have a sequence is created called camp_con_seq on my database. I wish I had my logical column run the camp_con_seq.nextval for each returned row. How can I set this up in the RPD?

    Thank you...

    Created the view in the layer using 'select' as a Type of Table with query
    Select double pubs.nextval;
    Add a nexval column.
    Saved it and when I discover data error
    ORA-02287: sequence number not allowed here

    Joint made with join complex fac.row_wid > = seq.col and followed by MDB and PS layer changes

    The same thing in answers too.

    I tried with EVALUATE('pubs.nextval(%1)' AS number, 'EMPLOYEES '. ("' Job_id") but no luck.

    I suggest you go for a slider or sp using seq gen I know no can go for it or not, tried to get errors, he left.

    Try to go for tables system... see how you can use using V$ SQL.

    Hope this helps

  • doubt about table constraints - subscribe - search

    Hello friends,
    Can you please clarify this question for me:

    I have a table called INVESTIGATIONS:

    SOURCE_ID
    AGENT_ID
    INQUIRY_ID
    CLIENT_FK
    BEDS
    UNIT_TYPE
    PROJECT
    INQUIRY_STATUS
    LEAD_STATUS

    DEAL_TYPE
    BUDGET
    ADMIN_FEED
    AGENT_FEED

    I had to create * 9 look it up * tables to provide values for the first 9 columns in table of the requests for INFORMATION.

    What causes a huge footprint on the database:

    -Join between 9 tables. -> > 9 FK on table of investigations.
    -9 NOT check constraints NULL on information to the array for the first 9 columns.

    {message: id = 10345002}

    This is the required report:
    select 
    
             "INQUIRY_STATUS"."INQUIRY_STATUS" as "INQUIRY_STATUS",
          "AGENTS"."AGENT_NAME" as "AGENT_NAME",
          "SOURCES"."SOURCE_NAME" as "SOURCE_NAME",
          "UNIT_TYPES"."UNIT_TYPE" as "UNIT_TYPE",
          "COMPLEXES"."COMPLEX_NAME_EN" as "COMPLEX_NAME_EN",
          "BEDS"."BED_NUMBER" as "BED_NUMBER",
          "INQUIRIES"."INQUIRY_ID" as "INQUIRY_ID",
           case when "INQUIRIES"."DEAL_TYPE" = 'S' then 'Sale' else 'Rent' end as "DEAL_TYPE",
          "INQUIRIES"."MOVING" as "MOVING",
          "INQUIRIES"."BUDGET" as "BUDGET",
          "INQUIRIES"."ADMIN_FEED" as "ADMIN_FEED",
          "INQUIRIES"."AGENT_FEED" as "AGENT_FEED",
          "CLIENTS"."FIRST_NAME" as "FIRST_NAME" ,
             "LEAD_STATUS"."LEAD_STATUS" AS "LEAD_STATUS"
    
    
     from      "INQUIRIES" "INQUIRIES" INNER JOIN  
             "CLIENTS" "CLIENTS" ON  ("CLIENTS"."CLIENT_ID"="INQUIRIES"."CLIENT_FK")
    
    INNER JOIN  
             "LEAD_STATUS" "LEAD_STATUS" ON  ("LEAD_STATUS"."STATUS_ID" = "INQUIRIES"."LEAD_STATUS")
    INNER JOIN  
           "BEDS" "BEDS" ON ("BEDS"."BED_ID"="INQUIRIES"."BEDS")
    INNER JOIN  
          "COMPLEXES" "COMPLEXES" ON ("COMPLEXES"."COMPLEX_ID"="INQUIRIES"."PROJECT")
    INNER JOIN  
          "UNIT_TYPES" "UNIT_TYPES" ON ("UNIT_TYPES"."UNIT_TYPE_ID"="INQUIRIES"."UNIT_TYPE")
    INNER JOIN  
          "SOURCES" "SOURCES" ON  ("SOURCES"."SOURCE_ID"="INQUIRIES"."SOURCE_ID")
    INNER JOIN  
          "AGENTS" "AGENTS" ON ("AGENTS"."AGENT_ID"="INQUIRIES"."AGENT_ID")
    INNER JOIN  
             "INQUIRY_STATUS" "INQUIRY_STATUS" ON ("INQUIRY_STATUS"."STATUS_ID" = "INQUIRIES"."INQUIRY_STATUS")
    
    where :P1_phone is null or TRIM(:P1_phone) in ("CLIENTS".mobile1,"CLIENTS".mobile2,"CLIENTS".land_line)
      
    Kind regards
    Fateh

    Fateh says:
    Hello friends,
    Can you please clarify this question for me:

    I had to create * 9 look it up * tables to provide values for the first 9 columns in table of the requests for INFORMATION.

    Which causes a huge footprint on the database?

    N ° this is a database was built for. Especially an oracle database can handle this exceptionally well. The positive point is the optimizer (cbo = cost based optimizer) is the most effective way how to deal with such a simple select statement. Provided that the CBO has enough and relevant information, which means that statistics should be collected.

    I just noticed that this filter condition is not a good way to get quick access to your data in tables.

    where :P1_phone is null or TRIM(:P1_phone) in ("CLIENTS".mobile1,"CLIENTS".mobile2,"CLIENTS".land_line)
    

    The datamodel is not properly normalized, so instead of making a simple comparison like

    :p1_phone = clients.phonenumber 

    you need such a compex or condition (IN = GOLD)

    But it wasn't the question, right?

    Published by: Sven w. on August 20, 2012 18:33

  • OBIEE 10G - repository Business Model adding fact Table

    Hello

    I tried to search the forum for problems similar to this one, but did not find any thread that responded to my doubts.

    I'll try to explain this very well (without images it's complicated). Suppose we have a schema with the following tables:

    Dim_1, Dim_2, Dim_3, Dim_4, Dim_5, Fact_1, Fact_2

    Fact_1 is connected to Dim_1, Dim_2 and Dim_3
    Fact_2 is connected to Dim_2, Dim_3, Dim_4 and Dim_5

    And on the business of the repository model, we already have a model with the following tables:

    Dim_1, Dim_2, Dim_3 and Fact_1. It was the State of the repository, the last time that we have saved.

    Now, I want to add to the activity model, the table Fact_2 and the Dims that connect with Fact_2. What should I do here?

    If I drag the physical layer only the tables (Dim_4, Dim_5 and Fact_2 like Dim_1 and Dim_2 already exist in the business model) when I check on the business model of the table Fact_2 and direct joins diagram I see only joins Dim_4 and Dim_5 and not joined to the other two dimesion tables (Dim_1 and Dim_2). I don't know if OBIEE will always act as these joins are made or if I'm having problems when I'm working on presentation services.

    If I drag the physical layer, the tables (Dim_2, Dim_3, Dim_4, Dim_5 and Fact_2) I'll see all the joins, but I'll have on repeated business model tables, something like this:

    Dim_1, Dim_2, Dim_2, #1, Dim_3, Dim_3, #1, Dim_4, Dim_5, Fact_1 and Fact_2

    So what is the solution here? I have to redo everything I want to add something, and this situation occurs? Isn't his smart and there must be a better solution. I know that I can start direct joins manually, but that is the best solution that I can find in this situation?

    I hope that I was clear :)

    Thank you

    Hello

    I have proposed this approach because your layer of MDB was already designed with fact1 joins. If you have already designed MDB, once you drag fact1, fact2 & Sun 1-5 (after physical joins) complex join will be automatically created in MDB. Now that you're at halfway, it is the only way to include the tables.

    Rgds,
    DpKa

  • an RPD on more

    (1) to say that I have 10 table (1fact & 9dim). I created all the joins from fk in the physical layer. Now, I will drag all the 10 tables (fact & Sun) layer of MDB and make complex join here. My question is we already have joins to the physical layer using the join of the FK. Having said that there are relationship between the tables, what is the need for the join complex layer current MDB.

    (2) to say that I have 10 table (1fact & 9dim). I created joins from fk to 9 tables in the physical layer and a table is not connected. Now I will drag all 10 (fact & Sun) tables in MDB layer. How to use this Dimension not connected. This dimension will be used to obtain the answer report.

    Thank you and best regards,
    Pallis

    The link we create will not affect all the database. I'm wrong

    Yes, it will not impact the DB at all... If you want to cross-check the DB by select this table in this way
    Select table_name * (or) table_name desc is added to this a touch any.

    Mark so it would also be useful for others. So, the search becomes easy if answered.

    Thank you for your prompt points and ethical following.

    See you soon,.
    KK

    Published by: Kranthi.K on April 29, 2011 12:44 AM

  • a few questions on RPD

    (1) how can we identify facts and dimensions in the physical layer?
    (2) when and why are we going to join complex layer MDB?
    (3) in the physical layer, we created the join FK and used used all tables in MDB layer. The join FK still exists in MDB layer.if or not the reaons?
    (I tried the 3rd questions in 2 of the schema is sh and other is scott.) When I tried on scott link FK is present in MDB layer but in HS there is no imean no link I created manually.)
    (4) I have 3 tables a, b, c. "a" is done. I have to use join between the tables. 'a' has 4 columns and 'b' has 5 columns. Now when I want to connect 'b' to 'a' i can find no common column name. But I want to connect 'a' and 'b '. In this case make for complex join?
    If I'm wrong with above questions correct

    Thank you and best regards,
    Pallis
     How can we identify facts and dimensions in physical layer? 
    

    A fact table is a table with measures. Measures should be defined in a logical fact; a column with an aggregation rule is a measure. Oracle BI Server includes any table in a repository which has many-to-one (n: 1) joins it is a fact table. Oracle BI Server uses the logical joins in the business model to identify a fact table.

    Dimension tables contain attributes that describe the business entities. For example, the customer name, region, address, country and so on.
    Dimension tables contain primary keys that identify each Member.

    Dimension tables are expected to store the columns that cannot be aggregated while fact tables are expected to store the columns that can be aggregated.

     When and why do we go for complex join in BMM layer? 
    

    When you use complex joins in the business layer then they really act as placeholders.
    They allow OBI server to decide on which are better joins define in the physical layer to satisfy the request.

    In physical layer we created FK join and used used all the tables into BMM layer.
    Does the FK join still exists in BMM layer.if yes or no any reaons? 
    

    No, we must also create FK join still in layer of MDB. If you select all the dimensions and fact tables, which are FK joined in the physical layer, and drag in the layer MDB
    and check the MDB chart for dimensions and facts. you will find the relationship, if you drag the single table at a time, you must manually create the join FK.

     i have to 3 tables a,b,c. 'a' is fact .I have to use join between the tables.
    'a' has 4 columns and 'b' has 5 columns. Now when I want to connect 'b' to 'a'
    i don't find any common column name. But I want to connect 'a' and 'b'.
     In this case do we go for complex join? 
    

    For all other others that a primary relationships of key foreign-key relationships (other than equal expression to perform an equi-join), you must use a complex join otherwise you will have to use a foreign key

    Http://gerardnico.com summary

    See you soon,.
    Aravind

  • Recalculation

    To the right,.

    We try to implement some future calculations in the logical layer and realized that "mago" fuction does not work with negative numbers to move toward the future. I don't see all the standard features that exist to do such a thing. I thought a few options at this point, but wanted to see what others had to offer / have done in the past. Any thoughts will be greatly appreciated.

    My thoughts are:

    1 somehow all implement a few years before what she really is and do everything compared so that we can actually use x years/quarters/months off
    2. create a bunch of views materialized that have everything for different time spans (this will get very complicated probably)
    3 Creata a PL/SQL function to work in a similar way as the "mago" but to go ahead instead (have not figured out if I can call a custom in the logical layer still function)

    Thanks in advance,

    Josh

    Josh,

    All these functions work perfectly on the physical layer when you use join complex (not regular FK join).
    So you could join by Datetime field and use the TimeStampAdd function instead of a surrogate key.

    GL

  • Follow the events

    Hello

    I need your help to manage one of my customers requirement.

    We must follow the changes that happened with coupons. Lets say that they have a particular asset A coupon from 01/01/2009 to 02/01/2009 and here again it starts from 01/04/09 to 05/01/09. The user must be able to select a date called "as", for example if the user selects the 15/01/09, it should be able to see all the coupons that are active as of 15/01/09 and he should see all of the attributes associated with this coupon from this particular date and if he chooses the 15/04/09 it should be able to see all the attributes of this coupon.

    So according to the dated him dérirez data must be changed. In my table of facts, I have opening and closing Date. What is the best way for me to generate this report.

    I appreciate your help. Thanks in advance.

    MCP

    Hello.

    Always try first to search forum with similar positions. Your problem is in the repository, with joins (dimension of TIME and FACT) in the physical layer.

    You said that your fact table data as:

    OpenDate CloseDate Coupons
    1.1.2009 1.2.2009 couponA
    1.4.2009 1.5.2009 couponB

    To display only active coupons in the report make a dashboard quickly with date (date).

    I guess you have you implement model correctly, otherwise in do the RPD in the physical layer Physics (complex, not to join FK) join to your date dimension (time) to your fact table and write:

    TIME. TIME_ID BETWEEN FACT. OPEN_DATE AND FACT. CLOSE_DATE

    where time_id, open_date and close_date are types of DATE data.

    This spread to MDB with join complex. After all the dashboard are quickly over TIME. TIME_ID and in the report answers set TIME. TIME_ID is invited.

    Test:

    If you select 15.1.2009 you will get a coupon (15.1.2009 located between 1.1.2009 and 1.2.2009)
    If you select 15.4.2009 you will get coupon B (15.4.2009 is between 1.4.2009 and 1.5.2009)

    Concerning
    Goran
    http://108obiee.blogspot.com

  • Reporting of multiple facts

    I'm looking options to generate reports based on facts with different grains. The requirement that I present here is generic and Im explores options on it.

    Lets say we have two facts fact1 and fact2. The common column between these facts is called - common_column

    Now that the grain is different at any given time, it generates the database with SQL next inline

    SELECT fact1.column_1, fact1.common_column, aggregate_fun (fact2.column_2 of fact2.common_column group) of...

    Options

    * 1. Creation of a third fact *-a simple solution is to create a fact3 and store all the information the report should
    * 2. Using fx in OBIEE report *-use an expression to get the result with fx

    You all better options that you would suggest to address this?

    Thank you

    You have any other table (such as dimensions) than the new LTS in the business model.

    If you add any other table and join (complex) with the new LTS, the problem could be solved.

  • OLAP cube - complex join condition

    Hi Experts,

    I requires a complex join between the dimension and cube.

    Requirement goes like this-

    We have a dimension to the date level-
    January 1, 2011
    January 2, 2011
    ...
    .. and so on.

    The fact table is not a matching surrogate key, but it has valid_from_date and valid_to_date that are stamps.

    I need to join these two to reach the condition readings - where dim.date between trunc (valid_from_date) and trunc (valid_to_date).

    Is it possible/feasible? Enjoyed your responses.

    Best regards, Marion

    You should be able to set a condition like this in the field "Join Condition" of the mapping pane cube in AWM. You would need to qualify table names to be something like this

    dim_table.date between trunc(fact_table.valid_from_date) and trunc(fact_table.valid_to_date).
    

    The only restriction to this approach is that you will not be able to partition on the time dimension for this cube due to the complexity of the condition.

    As an alternative, you can define a SQL view that joined your fact table in your time dimension table using the same condition. You map the cube on this point of view, in which case the restriction on partitioning goes.

  • not able to create the logical complex join in the Administration of BI 10.1.3.4.1.

    Hello

    I am facing this strange question in the business model. While I am able to create the logic of foreign keys (which, according to the documents, should not be created), for some reason I'm not able to create logical complex joins.
    Actions:
    (1) manage / joined... joined by Manager: Actions / new / logic to join...
    (2) in the window "join logic", I select the tables, BUT I can not choose any column (her are shown in "Column," drank lists these lists seem to be disabled)... .and combo box operator is disabled

    Same result when trying to view "Diagram of logical table" and a "new complex joining" from one table to the other drag-and-drop...

    Doesn't seem to be something related to this particular business model, because now it happens to all business models I... funny that there are some former complex logic is associated with some of my old business models

    Any ideas?

    Thank you!

    Published by: alex.v on June 2, 2010 17:10

    Published by: alex.v on June 2, 2010 17:15

    Exactly!

Maybe you are looking for

  • Rainflow change...

    Hello little one that long. I used the script kindly posted by ages ChristianW back and changed to go through a mass of channels and create a group for each of them, then do a rainflow analysis and create a matrix of average range. It works very well

  • Cannot install updates due to temporary network problems

    Hi need help please teporary network problems are interfering with windows update

  • HP Laser Jet 3800 printer: black spots on HP 3800 verticals

    Hello I have a HP Laser Jet 3800 printer that has started having black smudgess on each print out.  I did all the cleaning, I can think. Now I think the replacement of the fuser or belt transport. Any suggestions? Please see image.  It is very import

  • Windows Explorer crashes with photos

    Hi, this problem started last night.  While I was trying to look through my pictures folder, that I kept getting pop ups saying that Windows Explorer has encountered a problem.  It is said that it is looking for a solution, and then it stops and rest

  • Gender Windows

    Hola yo tengo a pc con Windows 7 installed.Arrancar el ordenador soon a siglo (creo casi 10 minutos), el ordenador're muy lento.Me gustaria gender Windows, ¿pero no se como? Some computer, consejos o ¿sabeis? He visto no hay tambien muchas tools you