2017-04-03 196 views
0

我有銷售數據,其中包含Cust_ID,Invoice_Date,發票,Item_Number(和其他很多字段)。此表爲每個客戶的發票有多個記錄,因爲每個記錄包含不同的Item_Number信息。我們稱這個表爲sales_main。MySQL:比較兩個表,並找到匹配的數據/第一個匹配的列第一個表

我有第二張表,只包含上面提到的三個字段,即Cust_ID,Invoice_Date和發票。該表只包含每個客戶的一行。我們稱這個表爲sales_filter。

我想要做的事實質上是使用第二個表作爲第一個過濾器,以便僅保留sales_main(及其所有列)中sales_filter和sales_main中的Cust_ID,Invoice_Date和Invoice列所在的行爲完全匹配。

所以,如果sales_filter有一排包含:

「1024」,「24/02/2016」,533

和sales_main有符合這三個條件的四排,返回所有四行在結果集中。 sales_main中的任何其他行都與sales_filter的任何行中的所有三列完全匹配。

但我只是不知道用什麼代碼來做到這一點!

+0

使用所需的字段與內部聯接sales_filter表數據和 –

回答

0

你需要加入基於這些3列這兩個表,然後將返回所有的記錄與匹配條件

select * from sales_main sm join sales_filter sf on (sm.Cust_ID=sf.Cust_ID and sm.Invoice_Date=sf.Invoice_Date and sm.Invoice=sf.Invoice) 

你可以選擇任何你選擇

+0

完美的作品只提取sales_main表列,謝謝! –

相關問題