mysql case when 有数据置为null
时间: 2024-02-05 22:15:35 浏览: 144
在 MySQL 中,可以使用 CASE WHEN 语句将某些数据置为 NULL。具体方法如下:
```
SELECT
CASE
WHEN column1 = 'some value' THEN NULL
ELSE column1
END AS column1,
column2,
column3
FROM your_table;
```
上述 SQL 语句中,通过 CASE WHEN 语句判断 column1 是否等于某个值,如果等于,则将其置为 NULL,否则保留原值。最终将 column1、column2 和 column3 查询出来。
需要注意的是,如果使用了 NULL 值,可能会影响到后续的计算。因此,需要根据具体情况来决定是否使用 NULL 值。
相关问题
mysql sql case when 判断不为null
在 MySQL 中,使用 CASE WHEN 语句可以对 NULL 值进行判断。具体做法是在 THEN 子句中显式地指定需要执行的操作,以处理 NULL 值的情况。下面是一个简单的示例,演示了如何使用 CASE WHEN 语句对 NULL 值进行判断:
```
SELECT column1,
CASE
WHEN column2 IS NULL THEN 'column2 is NULL'
ELSE 'column2 is not NULL'
END as column2_check
FROM table1;
```
在这个示例中,我们选择表 table1 中的 column1 列,并使用 CASE WHEN 语句检查 column2 列是否为 NULL。如果 column2 是 NULL,则返回字符串 'column2 is NULL',否则返回字符串 'column2 is not NULL'。注意,在 CASE WHEN 语句中,我们使用 IS NULL 来检查是否为 NULL 值。
mysql case when筛选一个字段把另外一个字段置为null
您可以使用如下的 SQL 语句来实现:
```
UPDATE 表名
SET 字段名 = NULL
WHERE 条件
```
具体地,您可以将以上的 SQL 语句中的 `表名` 替换为您需要进行操作的表的名称,将 `字段名` 替换为您需要置为 NULL 的字段的名称,将 `条件` 替换为您筛选记录的条件。例如,如果您想要将表 `mytable` 中 `field2` 字段的值置为 NULL,当 `field1` 字段的值等于 1 时,可以使用以下的 SQL 语句:
```
UPDATE mytable
SET field2 = NULL
WHERE field1 = 1
```
注意,执行此操作将会修改表中的数据,因此请谨慎操作。
阅读全文