我尝试了几个小时,读了许多帖子,但仍然不知道如何处理此请求:
我有一个这样的表:
+------+------+
|ARIDNR|LIEFNR|
+------+------+
|1 |A |
+------+------+
|2 |A |
+------+------+
|3 |A |
+------+------+
|1 |B |
+------+------+
|2 |B |
+------+------+
我想选择使用不同LIEFNR发生多次的ARIDNR。
输出应该是这样的:
+------+------+
|ARIDNR|LIEFNR|
+------+------+
|1 |A |
+------+------+
|1 |B |
+------+------+
|2 |A |
+------+------+
|2 |B |
+------+------+
最佳答案
这应该做到:
SELECT *
FROM YourTable
WHERE ARIDNR IN (
SELECT ARIDNR
FROM YourTable
GROUP BY ARIDNR
HAVING COUNT(*) > 1
)
这个想法是使用内部查询来识别具有
ARIDNR
值且在数据中出现1次以上的记录,然后根据该组值从同一张表中获取所有列。关于sql - 选择另一列中具有相同ID但值不同的行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21162812/