sql

2016-04-14 9 views
1

birden çok alt tablodaki tabloları seçin 3 tablo var, 1 üst tablo ve 2 alt tablo var. 1 tablo tüm sipariş numaraları ve diğer 2 çocuk masa sipariş numaralarındansql

örnek tablo için sipariş ayrıntıları içerir Order_master

order_id | order_date | order_status 
------------------------------------- 
    1  | 20-10-15 | pending 
------------------------------------ 
    2  | 10-11-15 | closed 
------------------------------------ 
    3  | 15-11-15 | closed 
------------------------------------ 
    4  | 25-12-15 | pending 
------------------------------------ 
    5  | 27-12-15 | closed 
------------------------------------ 

Çocuk Tablo order_detail içeren

------------------------------------- 
id  | order_id | client_name 
------------------------------------- 
    1  |  1 | Abc company 
------------------------------------ 
    2  |  3 | Test company 

Çocuk Tablo order_detail_cc

------------------------------------- 
id  | order_id | client_name 
------------------------------------- 
    1  |  2 | XYZ company 
------------------------------------ 
    2  |  4 | A2 company 
------------------------------------ 
    3  |  5 | B2 company 
------------------------------------ 

şimdi

------------------------------------- 
order_id | order_date | client_name 
------------------------------------- 
    1  | 20-10-15 | Abc company 
------------------------------------ 
    2  | 10-11-15 | XYZ company 
------------------------------------ 
    3  | 15-11-15 | Test company 
------------------------------------ 
    4  | 25-12-15 | A2 company 
------------------------------------ 
    5  | 27-12-15 | B2 company 
------------------------------------ 

olarak sonuç almak istiyorsanız

yardım lütfen
+0

? Bir sipariş için her iki tabloda da girişler varsa ne olur? – Quassnoi

+0

Ne tür bir sorguyu denediniz? – Paul

cevap

0

MySQL Union manuel

bir sipariş için bilgi veya details_cc birçok girdi ne olur
SELECT Order_master.order_date, Order_master.order_date, u.client_name 
FROM Order_master 
JOIN (
    (SELECT order_id, client_name 
    FROM order_detail) 
    UNION 
    (SELECT order_id, client_name 
    FROM order_detail_cc) 
) u ON Order_master.order_id = u.order_id 
0
SELECT order_id, order_date, client_name 
FROM order_detail 
JOIN order 
USING (order_id) 
UNION ALL 
SELECT order_id, order_date, client_name 
FROM order_detail_cc 
JOIN order 
USING (order_id)