删除如果无匹配表中的条件-SQL Server中的条件
假设我有一个带有以下行的SQL表:
名称:null,id:15
名称:'myname',ID:15
我想删除所有带有名称= null的行,但只有在表中不存在带有列名的行不存在的行。因此,在这种情况下,它不应删除任何行。但是,如果找到:
名称:null,id:15
名称:'null',ID:15
应该删除这两个行。
我尝试了此查询,但它不起作用:
DELETE FROM MyTable
WHERE Name = NULL
AND NOT EXISTS
(SELECT 1 FROM MyTable a
LEFT JOIN ...
LEFT JOIN ...
WHERE Name IS NOT NULL)
Let's say I have a SQL table with the following rows:
Name: Null, Id: 15
Name: 'MyName', Id: 15
I want to delete all the rows with Name = NULL but ONLY IF rows with column Name IS NOT NULL don't exist in the table. So in this case it shouldn't delete any row. However, if it finds:
Name: Null, Id: 15
Name: 'Null', Id: 15
it should delete both rows.
I have tried this query but it doesn't work:
DELETE FROM MyTable
WHERE Name = NULL
AND NOT EXISTS
(SELECT 1 FROM MyTable a
LEFT JOIN ...
LEFT JOIN ...
WHERE Name IS NOT NULL)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用
存在
You can use an
EXISTS
尝试这样
Try like This