我正在尝试仅返回colA和colB不包含数字或空格的那些行
到目前为止,这是我的代码。
SELECT * FROM table_name WHERE colA REGEXP '[^0-9^\W]' AND colB REGEXP '[^0-9^\W]'
给定数据集
colA colB
---------- ----------
test | testB
33 | text <- this is not returned
blah | 0123A <- this is returned
我以为我的问题是我的正则表达式...有什么帮助吗?
最佳答案
那么您的表达式不起作用是因为:33都是数字,并且您正在寻找任何非十进制,非空格字符。因此它不包含结果行。
尝试:
SELECT * FROM table_name WHERE colA NOT REGEXP '[0-9[:space:]]' AND colB NOT REGEXP '[0-9[:space:]]'
ETA:是的,忘记了\无论什么都不起作用