sql查询以列出具有相同列值的行,然后删除特定行

时间:2018-01-24 18:32:48

标签: sql-server

我是sql的新手,我使用MS sql管理服务器来检查数据库。 我需要编写一个SQL查询来列出具有相同列值的行,然后删除一个特定的行。例如:

+------+------+
|pid   |code  |
+------+------+
|1     |A     |
+------+------+
|2     |A     |
+------+------+
|3     |A     |
+------+------+
|1     |B     |
+------+------+
|2     |B     |
+------+------+

对于上表,首先我需要对具有相同' pid'的行进行分组。然后在任何一组中,如果' A'和' B'两者都存在,我需要用'代码'删除行。进入' B'。 所以从上面的表我需要删除最后2行。 非常感谢任何帮助。

由于

1 个答案:

答案 0 :(得分:2)

试试这个;

Send

Demo