我有一个包含几千个条目的表,如下所示:
ID Data Type Amount
1 Start
1 Money 13.45
1 Money 3.79
1 Money 46.82
1 END
2 Start
2 Money 26.24
2 END
3 Start
3 END
我想在上面的示例中删除任何看起来ID = 3的ID的ID组,其中只有一个Start / END但没有钱。我正在尝试使用内部联接来识别这些行,但是我在编写select语句时遇到了问题。如何选择适合此描述的行?
答案 0 :(得分:3)
简单选项:
Delete from MyTable
Where ID not in (Select ID from MyTable where [Data Type] = 'Money')
答案 1 :(得分:0)
假设您的表名为test,则以下内容应该为您完成。
DELETE FROM test
WHERE id NOT IN (
SELECT id FROM test WHERE data = 'Money');