我需要在兩個不同的字段上連接兩個表。我有表1所示:SQLite加入兩個重複鍵的表
key productid customer
1 100 jhon
2 109 paul
3 100 john
和表2中具有相同的字段,但aditional的數據我必須與第一臺
key productid customer status date ...
1 109 phil ok 04/01
2 109 paul nok 04/03
3 100 jhon nok 04/06
4 100 jhon ok 04/06
兩個「關鍵」字段是自動增量。問題在於我的關係字段在結果中重複了幾次,我需要生成一對一的關係,以這種方式,表2中的一行必須與表1上的一行僅關聯一次。
我做了一個左連接(customer = customer和productid = productid),但關係重複出現,平板電腦2中的一行與表1的多行相關。
要澄清的東西...
我要交叉檢查兩個表,表1是從XLS報告加載,表2是反映客戶的交易有許多狀態數據的數據庫數據。我必須檢查數據庫中是否存在來自XLS的行,然後加載其他狀態數據。當來自XLS的行在數據庫中沒有對應數據時,我必須生成報告。
如何才能完成這個JOIN,這是可能的只有SQL?
假設你想利用兩行(鍵= 3,關鍵= 4)中的一個從表2與主要= 1 table1的記錄:其中你會選擇?爲什麼? – Marco 2012-04-21 16:46:35
任何一個都可以,條件是(productid = productid和customer = customer),但是是一對一的。例如,在我的示例中,table2-key3可能與tablet1-key1和key3相關,但我的要求是隻涉及一次,因此可以是key1或key4,但只能使用一次。 – ruhalde 2012-04-21 16:56:26
@ Marco的問題很重要。而且,由於table1與表2具有相同的信息(這可能是錯誤的模式設計),您爲什麼關心table1呢? – 2012-04-21 16:56:30