2017-08-09 46 views
-1

如果我有一個「SALES」表,包含SaleID,Product#和CustomerName的列。以及包含兩列product_ID和Name的PRODUCTS表。包含5種不同的產品。在銷售表中填充銷售時。SQL查詢可以找到所有列,即多行,但在另一列中具有不同的值?

如何查詢customer_name只有Product_ID爲1和2?

銷售表

SALES_ID PRODUCT_ID CUSTOMER_NAME 
1     1  DAVE 
2     2  DAVE 
3     3  DAVE 
4     1  TOM 
5     2  TOM 
6     1  JANE 
7     1  MIKE 
8     1  MIKE 
9     3  MIKE 
10     4  MARY 

我想一個表的結果是

SALES_ID PRODUCT_ID CUSTOMER_NAME 
1     1  TOM 
2     2  TOM 
+0

你想要一個關係部門。 https://www.red-gate.com/simple-talk/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/ – Serg

+0

更新您的問題添加一個正確的(表格)數據樣本和預期結果.. – scaisEdge

+1

Oracle和MySQL是兩種不同的語法產品。你使用哪一個? – Shadow

回答

0
Select s.CustomerName from SALES s 
INNER JOIN PRODUCTS p ON s.Product#=p.Product# 
WHERE p.Product# =1 
INTERSECT 
Select s.CustomerName from SALES s 
INNER JOIN PRODUCTS p ON s.Product#=p.Product# 
WHERE p.Product# =2 
+0

謝謝!它工作完美! – javaTwilight

相關問題