2012-02-18 51 views
0

我有兩個表中獲取數據..兩個表,如何從這些表

客戶票據 - 包含客戶

從billRecievedFromClient法案Infor公司 - 包括我們從receievd量客戶賬單

mysql> select * from clientBills;

+ ------------ + ------------ + ------------ + ----- ------- +

|日期| clientCode | billNumber | billAmount |

+ ------------ + ------------ + ------------ + ------ ------ +

| 2012-02-17 | C0001 | B0001 | 1200.00 |

| 2012-02-17 | C0001 | B0002 | 1000.00 |

| 2012-02-17 | C0002 | B0003 | 1233.00 |

| 2012-02-18 | C0003 | B0004 | 12000.00 |

| 2012-02-18 | C0001 | B0005 | 400.00 |

+ ------------ + ------------ + ------------ + ------ ------ +

mysql> select * from billRecievedFromClient;

+ ------------ + -------------- + --------------- + -------- + --------- +

|日期| receivedCode | forBillNumber |數額|備註|

+ ------------ + -------------- + --------------- + - ------- + --------- +

| 2012-02-18 | R0001 | B0001 | 200.00 |現金|

| 2012-02-18 | R0002 | B0001 | 300.00 |現金|

| 2012-02-18 | R0003 | B0002 | 300.00 |現金|

| 2012-02-18 | R0004 | B0003 | 233.00 |現金|

| 2012-02-18 | R0005 | B0001 | 700.00 |現金|

+ ------------ + -------------- + --------------- + - ------- + --------- +

現在我想要這樣的信息---即客戶端C0001,有3票據。並且他完全支付了一張賬單,部分支付了一張賬單,並支付了一張賬單完成金額。

+ ------------ + ---------- - + ------------------------------------ +

| billNumber | billAmount | SUM(billRecievedFromClient。數額)|

+ ------------ + ------------ + ------------------- ----------------- +

| B0001 | 1200.00 | 1200.00 |

| B0002 | 1000.00 | 300.00 |

| B0005 | 400.00 | 00.00 |

+ ------------ + ------------ + ------------------- ----------------- +

記得,因爲他沒有啓動第三繳費,也不會是,在第二個表中的任何條目..

能有什麼是這個查詢?

請建議..

非常感謝!

+0

有人格式問題請... – 2012-02-18 10:04:24

回答

0

使用LEFT JOIN

SELECT *, SUM(t2.amount) FROM clientBills t1 LEFT JOIN billRecievedFromClient t2 ON t1.billNumber = t2.forBillNumber

反正不會有記錄的非啓動賬單。 但是,如果你想爲非開始的帳單空值記錄你可以添加在查詢結束:GROUP BY t1.billNumber

+0

它只提取一行..和總和是所有行... ... + ------------ + ------------ + ---------------- + | billNumber | billAmount | SUM(t2.amount)| + ------------ + ------------ + ---------------- + | B0001 | 1200.00 | 1733.00 | + ------------ + ------------ + ---------------- + – 2012-02-18 09:54:58

+0

啊,我明白了嘗試在查詢'GROUP BY t1.clientCode,t1.billNumber'的末尾添加如果它不能在某處使用模式和一些數據來粘貼SQL;) – 2012-02-18 10:08:23

+0

Thanks Dude !!完成! – 2012-02-18 10:17:08