在SQL中,我很难得到值相同的行。
示例
recnr | 测试ID |
---|---|
1 | 一百零一 |
二 | 一百零二 |
三 | 一百零二 |
四 | 一百零三 |
五 | 一百零四 |
六 | 一百零四 |
七 | 一百零四 |
八个 | 一百零五 |
我想查看所有具有相同test_id编号的记录一次以上。从上面的例子中,我们可以看到:
| recnr|测试ID|
| --------------|--------------|
| 二|一百零二|
| 三|一百零二|
| 五|一百零四|
| 六|一百零四|
| 七|一百零四|
有人知道如何做到这一点吗?
先谢谢你了。
我确实尝试过使用group by和stuf,但可能是错误的方式。
2条答案
按热度按时间sh7euo9m1#
我们首先得到使用
group by
和having count(1) > 1
复制的test_id
的列表,然后使用inner join
得到预期的数据:这是一个在mysql上测试的工作解决方案。. demo here
mwecs4sa2#
对于MS SQL SERVER,我们可以使用IN操作符,Subquery,GroupBy和Having来获得您想要的结果。
您可以使用以下查询在任何在线MS SQL SERVER编译器上对其进行测试。
我已经添加了图像以供参考。