繁体   English   中英

SQL:根据条件选择多个具有相同列值的行

[英]SQL: select multiple rows with same column value based on where condtion

例如:

如果有如下表

OrderNumber  item
--------------------
1            pen
2            pencil
1            box

在我的条件下,如果我将item = pen,box放进去它应该给出行一行,因为笔和盒子的订单号相同。 如果我将item = pen放入由于订单号不同,铅笔结果应该为 如何组成这个SQL查询。 我们的记录超过4万。 因此查询应该非常乐观。

由于您知道'item'值,因此下面的代码返回通用的OrderNumber并解决了您的问题:

select OrderNumber from @tempTable
where item in (@param1,@param2)
group by OrderNumber
having count(OrderNumber) > 1

我已经解决了这个问题。

Select OrderNumber 
from @table 
where item IN (@item1,@item2) 
GROUP BY (OrderNumber) 
having count(distinct item) >= 2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM