查找所有列的SQL查询,即多行,但在另一列中具有不同的值?

时间:2017-08-09 18:52:24

标签: mysql sql oracle

如果我有一个“SALES”表,其中包含SaleID,Product#和CustomerName列。和一个带有两列product_ID和Name的PRODUCTS表。包含5种不同的产品。在SALES表中填写销售时间。

如何仅使用Product_ID为1和2来查询customer_name?

销售表

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

1 个答案:

答案 0 :(得分: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