SQL LIKE 通配符逗号、分号和空格字符

问题描述 投票:0回答:1

我需要帮助编写查询。

在我们的数据库中,一列有时有这样的值

'dog;cat'
'dog,cat'
'dog cat'

有时它只有

'dog'
'cat'
(这些只是我的问题的例子)

我想要做的是将每条记录的值中没有逗号、分号或空格作为输出。

起初我尝试了一些简单的东西

WHERE Animal NOT LIKE '%;%' OR Animal NOT LIKE '%,%' OR Animal NOT LIKE '% %'

但是它不起作用,我仍然在输出中得到

'dog;cat'
。 我搜索了一段时间,尝试了多种可能的解决方案(如
ESCAPE
NOT IN
CONTAINS
),但我找不到解决方案。

提前谢谢你!

sql wildcard sql-like
1个回答
0
投票

如果你正在使用 mysql/mariadb 尝试使用

REGEXP
:

WHERE Animal NOT REGEXP '[;, ]+'
© www.soinside.com 2019 - 2024. All rights reserved.