我有一个包含数千个地址的列address
,其中大多数都有一个数字,但很多地址都没有数字,地址是这样的:
- streetname 4
- streetname 8
- streetname 4/5
- streetname
我如何检测没有数字的'streetname'这样的字段。 我尝试过:
REGEXP '^-?[0-9]+$';
或isANumber()但没有给出正确的结果
答案 0 :(得分:3)
您可以使用:
address rlike '^[^0-9]*$'
答案 1 :(得分:1)
以下将删除最后的数字
TRIM(TRAILING '1234567890 ' FROM fieldname)
SO
WHERE TRIM(TRAILING '1234567890 ' FROM fieldname) <> TRIM(TRAILING ' ' FROM fieldname)
有数字和
WHERE TRIM(TRAILING '1234567890 ' FROM fieldname) = TRIM(TRAILING ' ' FROM fieldname)
不
答案 2 :(得分:1)
如果你想选择包含数字的行
SELECT * FROM table WHERE your_column REGEXP '[0-9]';
或者如果您使用不包含
的行SELECT * FROM table WHERE your_column NOT REGEXP '[0-9]';