我無法通過子查詢創建查詢來查找我的數據庫中購買次數最多的一位客戶。我需要列出他/她的全名,產品名稱,價格和數量。以下是我迄今爲止子查詢「查找購買量最高的客戶」
select first_name ||' '|| last_name "FullName", pt.name p.price, sum(ps.quantity)
from customers c
join purchases ps on c.customer_id = ps.customer_id
join products p on p.product_id = ps.product_id
join product_types pt on p.product_type_id = pt.product_type_id;
我需要使用這三個表
客戶表
Customer_ID
First_Name
Last_Name
DOB
Phone
採購表
Product_ID
Customer_ID
Quantity
個產品表
Product_ID
Product_Type_ID
Name
Description
Price
產品類型表
Product_Type_ID
Name
我很困惑,我應該在哪裏放置子查詢(在選擇行中,從具有或where子句),如果算術函數應該放在選擇的外部查詢或子查詢中。我知道有嵌套子查詢,相關子查詢,多列子查詢,多行子查詢,單行子查詢。順便說一句,我正在嘗試在Oracle中這樣做。 下面是我的結果圖像,但我從數量列中刪除了總和。此外,更新的鏈接。
(http://i1294.photobucket.com/albums/b618/uRsh3RRaYm0nD/Capture100_zps1f951b07.jpg)
對不起,我忘了,包括第四個表,你可以看到有兩個名稱列在產品表和產品類型的表。區別在於產品表中的「名稱」是產品的具體名稱,如我的鏈接所示。產品類型「名稱」列是產品的更一般名稱,例如書籍,dvd,cds等。我需要在產品類型「名稱列」中包含我的查詢而不是產品名稱列,因此最終結果應該是像這樣
FullName ProductTypeName Price Quantity
John Brown Book Sumof4books 4
John Brown DVD Sumof2DVDs 2
John Brown Magazine Sumof1Mag 1
你需要更具體。添加一些測試數據和預期的答案。您是否在爲每個購買了該產品最多的產品尋找一位客戶?無論產品如何,購買量最高的單一客戶?別的東西? – Laurence