我需要帮助编写查询。
在我们的数据库中,一列有时有这样的值
'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
),但我找不到解决方案。
提前谢谢你!
如果你正在使用 mysql/mariadb 尝试使用
REGEXP
:
WHERE Animal NOT REGEXP '[;, ]+'