在SQL Server中使用条件时删除用例的行

时间:2018-07-29 14:38:08

标签: sql sql-server ssms

说我写这个查询

select
    x1, x2, x3 act
from 
    mytab

我需要使用任何条件删除行

case when x1=b, and act=0, then delete these rows

同时,我需要通过null列删除包含x1值的行。

我该怎么做?

3 个答案:

答案 0 :(得分:1)

您在WHERE子句中指定了条件

根据您的条件

DELETE d
FROM   mytab d
WHERE (
          d.x1 = 'b' AND d.act = 0
      )
OR    d.x1 is null

答案 1 :(得分:0)

在MySQL中使用where子句

DELETE FROM mytab 
WHERE x1 = b AND act=0 OR x1 IS NULL;;

只需执行此SQL并完成。它将从数据库中删除符合这些条件的行。

答案 2 :(得分:0)

要删除行,请使用Delete语句而不是select和表名,然后使用where子句放置条件

 Detele t1
     from mytab t1
    where 
     (  x1=b  and act=0
     ) OR x1 IS NULL

这里t1是表mytab的别名