-1
所以我有一個可以被稱爲下表的情況:查詢爲1對多表
TABLE A TABLE B TABLE C
ID TOTAL_PRICE ORDER_ID ID ID ORDER ID
1 10 101 101 1001 101
2 20 101 103 1002 101
3 25 103 1003 103
4 10 103 1004 103
所有這些表我很期待這個結果:
EXPECTED OUTPUT
ID TOTAL_PRICE ORDER_ID ID
1 10 101 1001
2 20 101 1002
3 25 103 1003
4 10 103 1004
而且我得到的結果如下:
REAL OUTPUT
ID TOTAL_PRICE ORDER_ID ID
1 10 101 1001
1 10 101 1002
2 20 101 1001
2 20 101 1002
3 25 103 1003
3 25 103 1004
4 10 103 1003
4 10 103 1004
我的SQL如下,我使用SQL甲骨文:
SELECT a.id, a.total_price, a.order.id, c.id
FROM a,b,c
WHERE a.order_id=b.id AND b.id=c.order_id
有了這種情況,我該如何解決問題才能獲得預期的輸出?謝謝。
請更好地解釋您預期的結果背後的邏輯;例如,total_price = 25的記錄具有ID爲1003和1004(表C)的order_id,那麼爲什麼只需要1003? – Aleksej