2015-05-23 102 views
-1

我有兩個表,mysql查詢一個情況?


OrderTable(訂單ID,ordersum)


和OrderPayments(訂單ID,paidamount)。


OrderTable


的OrderID ordersum


ORD123456 40,000.00


ORD789987 30,000.00


OrderPayments


的OrderID paidamount


ORD123456 10,000.00


ORD123456 20,000.00


ORD123456 10,000.00


ORD789987 28,000.00




有關訂單,支付可以分期付款製成。


我必須得到輸出


的OrderID ordersum paidamount


ORD123456 40,000.00 40,000.00


ORD789987 30,000.00 28,000.00


我已經完成了使用視圖。

創建視圖OP1作爲 選擇訂單ID,和(paidamount),如通過從訂單ID組orderpayments 「pamount」;

然後我使用內部連接查詢b/w可定製和視圖(op1)。

我希望它在單個查詢中完成,而不是使用視圖/任何其他表。這可能嗎?建議我?

回答

0

使用內部查詢。 這是加入聲明的示例

select * from OrderTable 
inner join (
    select 
     orderid, sum(paidamount) as "pamount" 
    from orderpayments 
    group by orderid 
) as tmp using (orderid) 
+0

感謝您的解決方案..它工作。但我不明白查詢控制流程,你能詳細解釋我嗎? –

+0

你到底明白了什麼?查詢的工作方式與使用視圖完全相同,但使用嵌套查詢查看 –

+0

您的查詢很好,我得到了輸出結果。我的問題是你沒有使用的條件下,仍然工作。如何查詢逐步執行..由想法是下一個,如果我得到要求,我應該像你一樣寫。 –