当前位置:  开发笔记 > 编程语言 > 正文

SQL Server:如何在列中选择具有相同值的行,但在另一列上为分组行选择一些精确值

如何解决《SQLServer:如何在列中选择具有相同值的行,但在另一列上为分组行选择一些精确值》经验,为你挑选了1个好方法。

我有这个表有一些示例数据:

Supplier_ID Product_ID  Stock
-----------------------------
1             272          1
1             123          5
1             567          3
1             564          3
2             272          4
2             12           3
2             532          1
3             123          4
3             272          5

我想检查两种产品的供应商:272123结果如下:

Supplier_ID
-----------
1
3

Lukasz Szozd.. 5

你可以使用GROUP BYHAVING:

SELECT Supplier_ID
FROM your_tab
WHERE Product_ID IN (272, 123)
GROUP BY Supplier_ID
HAVING COUNT(DISTINCT Product_ID) = 2;

LiveDemo



1> Lukasz Szozd..:

你可以使用GROUP BYHAVING:

SELECT Supplier_ID
FROM your_tab
WHERE Product_ID IN (272, 123)
GROUP BY Supplier_ID
HAVING COUNT(DISTINCT Product_ID) = 2;

LiveDemo

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有