2017-06-17 68 views
0

我有兩個表名爲booked_flatmaster_flat。的booked_flats如何在sql中合併兩個不同列的表格

customer_name, customer_address, customer_phone, building_wing_no, building_name_no, flat_no 

master_flats

​​

當任平獲取預訂的狀態得到改變爲其他出售狀態仍然流拍。

銷售狀態的所有條目都在booking_flats中。

我曾試圖合併這兩表,但它給出了一個錯誤,請幫我

$sql = SELECT * FROM 'booked_flats' 
     UNION SELECT * FROM 'master_flats' 
      WHERE building_wing_no, building_name_no, flat_no NOT IN (
       SELECT building_wing_no, building_name_no, flat_no from booked_flats); 

例如:

**master_flat:** 

building_wing_no building_name_no flat_no status    
----------------------------------------------- 
    a    a2   104 unsold 
------------------------------------------------- 
    b    a3   105 sold 




booked_flat: 
    custo_name custo_add custo_ph building_wing_no building_name_no flat_no 
    --------------------------------------------------------------------------- 
    harish  wardha  284632  b    a3   105 



I want result like 

    cust_name cust_add custo_ph building_wing_no building_name_no flat_no status 
    harish wardha 284632   b   a3    105    
     ---  ---  ---   a   a2    104 unsold 
+0

這很難回答這樣的問題。請分享一些示例數據以及您試圖獲取該示例的結果。 – Mureinik

回答

0

我想你真正想要做的是一個join而不是union,但你應該更新你的問題並寫出你想要顯示的內容。

SELECT * FROM booked_flats b 
JOIN master_flats m ON b.building_wing_no = m.building_wing_no 
    AND b.building_name_no = m.building_name_no AND b.flat_no = m.flat_no; 
+0

但我希望來自於所有記錄和從master_flats的狀態=未售出的一些記錄。 – user1825

+1

專門閱讀加入加入。 –

+0

我嘗試使用連接,但它給出了一個錯誤。我沒有正確地獲取如何從table1中獲取一些記錄並將它們與另一個表連接起來。 – user1825