gpt4 book ai didi

mysql - 在表上显示 MySQL 数据记录 NULL

转载 作者:太空宇宙 更新时间:2023-11-03 11:29:48 26 4
gpt4 key购买 nike

我有 MySQL 上的数据,如下图所示 enter image description here

当我使用查询时

select
*
from
aps
where
kategori not like '%high'
and
kategori not like '%medium'
and
kategori not like '%standar';

那没有显示任何东西。

而且,如何在该表上显示该数据为 NULL?

最佳答案

NULL SQL 中的值导致比较操作(例如 LIKENOT LIKE= 等)表现不同:A NULL值不能直接与非 NULL 进行比较值(value)。这与大多数编程语言不同,其中 ==!=运算符是为 null 定义的引用和指针(例如 C#、Java、C++ 等)。

在 SQL 中使用 IS NULL运算符(operator)测试 NULL特别是。

所以在你的情况下,查询应该是:

select
*
from
aps
where
(
kategori IS NULL
)
OR
(
kategori not like '%high'
and
kategori not like '%medium'
and
kategori not like '%standar'
)

或者,使用 COALESCE在子查询中提供非 NULL如果您打算使用 kategori 的值在其他操作中 NULL由于处理的复杂性,值可能不理想 IS NULL具体来说:

SELECT
sq.*
FROM
(
SELECT
*,
COALESCE( kategori, '' ) AS kategori2 -- use an empty string instead of NULL
) AS sq
WHERE
kategori2 NOT LIKE '%high'
AND
kategori2 NOT LIKE '%medium'
AND
kategori2 NOT LIKE '%standar';

关于mysql - 在表上显示 MySQL 数据记录 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50980104/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com