2016-09-12 48 views
0

客戶的名字這是我的關係模式找到誰支付最多的一個訂單

enter image description here

從所有的銷售訂單,我需要找到一個與用過的最高總客戶並找到該客戶的名稱。

我真的不知道如何拿出解決方案。

尋找具有最高的總的順序並不難:

SELECT MAX(total) 
FROM sales_order 

但我不知道該怎麼繼續。我一直試圖做的是

要拿出順序最高的總 - >找到customer_id從它 - >寫下一個劇本讓sales_order.customer_id = customer_customer_id - >向客戶展示的name

但是我從第一步到第二步都遇到了麻煩。我已經能夠做的唯一的事情是讓錢每個客戶的一個訂單所花費的最高金額:

SELECT MAX(total), customer_id 
FROM sales_order 
GROUP BY customer_id 

這是不是我要找的。

謝謝!

+0

見http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an -mcve-for-what-looks-to-the-very-simple-sql-query – Strawberry

+3

子查詢是一種簡單的方法:select * from sales_order o內部連接Customer c on c.Customer_ID = o .Customer_ID其中Total =(從sales_order中選擇max(Total))'這可能會返回多個訂單。 – shawnt00

+0

此問題被視爲已回答 – Drew

回答

1

我可能會去這個使用子查詢在我的where子句,像這樣:

SELECT c.Name 
FROM sales_order o 
INNER JOIN Customer c ON c.Customer_ID = o.Customer_ID 
WHERE Total = (SELECT MAX(Total) FROM sales_order)