乡村购物商业集团 发表于 2024-7-9 19:24:22

MYSQL——mysql检索不包含字母U的数据

2024/07/09
1. NOT LIKE
2. IS NOT、、!=
3. NOT IN
如题,正确答案如下:
SELECT *
FROM your_table_name
WHERE your_column_name NOT LIKE '%U%';今天写类似检索语句时,脑子突然一懵,写成了IS NOT '%UD%',如下:
SELECT *
FROM your_table_name
WHERE your_column_name IS NOT '%D%';IS NOT 等价于或者!=,表示不等于,而非不包含,不过IS NOT常用于IS NOT NULL,或者!=后则通常跟具体字段值。
IS NOT '%D%'这种表达是不正确的,它试图将一个字段与包含通配符 % 的字符串进行比较,这在 SQL 中是不允许的。通配符 % 通常用于 LIKE 或 NOT LIKE 操作符中,而不是用于 =、、!= 或 IS NOT 这样的比较操作符。
还有一个NOT IN,我觉得也有必要记到此处。
NOT IN可以排除多个特定的值,大约相当于把好几个!=或合并了,案例如下:
SELECT *
FROM your_table_name
WHERE your_column_name NOT IN ('U', 'another_value');SELECT *
FROM your_table_name
WHERE your_column_name != 'U'
AND your_column_name != 'another_value';SELECT *
FROM your_table_name
WHERE your_column_name <> 'UD'
AND your_column_name <> 'another_value';
来源:https://www.cnblogs.com/lidadudu/p/18292185
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: MYSQL——mysql检索不包含字母U的数据