So we have one 'master' table and three other tables with some kind of detalis like below.
+-------------+
| TAB_A |
+-------------+
|PK ID_A |
|FK ID_MAIN |
| DATA_A |
---------------
*
|
|
+----------+
|TableMain |
------------
|PK ID_MAIN| +------------+
| Main_data|--*| TAB_B |
| | +------------+
------------ |PK ID_B |
| |FK ID_MAIN|
| | DATA_B |
* --------------
+-------------+
| TAB_C |
+-------------+
| PK ID_C |
| FK ID_MAIN|
| DATA_C |
----------------
Example values:
TableMain:
ID_MAIN Main_data
1 main1
2 main2
3 main3
TAB_A | TAB_B | TAB_C
ID_A ID_MAIN DATA_A | ID_B ID_MAIN DATA_B | ID_C ID_MAIN DATA_C
1 2 A2 | 1 1 B3 | 1 3 C3
2 3 A3 | 2 1 B3_1 |
and I want all details from TAB_A,TAB_B and TAB_C for each rekord from TableMain. The output should look like this
ID_MAIN | Main_data | DATA_A | DATA_B | DATA_C |
-------------------------------------------------
1 | main1 | | B3 | |
| main1 | | B3_1 | |
2 | main2 | A2 | | |
3 | main3 | A3 | | C3 |
Can You help me with this? I have no idea how to do it... All my queries generate Cartesian product.
No comments:
Post a Comment