Mysql SQL-从列仅包含数字的表中选择所有行

Mysql SQL-从列仅包含数字的表中选择所有行,mysql,sql,Mysql,Sql,我想查找列中只包含数字的所有行 第一个想法是像[0-9]%一样使用,但实际上这与任何以数字开头的字符串都匹配 这似乎是一项非常简单的任务,但不幸的是,我无法在Sql server中找到解决方案 where some_column NOT LIKE '%[^0-9]%' 演示 declare @str varchar(50)='asdarew345' select 1 where @str NOT LIKE '%[^0-9]%' 对于Mysql使用 您使用的是什么?如果是MS SQL

我想查找列中只包含数字的所有行

第一个想法是像[0-9]%一样使用
,但实际上这与任何以数字开头的字符串都匹配


这似乎是一项非常简单的任务,但不幸的是,我无法在
Sql server
中找到解决方案

where some_column NOT LIKE '%[^0-9]%'
演示

declare @str varchar(50)='asdarew345'

select 1 where @str NOT LIKE '%[^0-9]%' 
对于
Mysql
使用


您使用的是什么?如果是MS SQL 2005或更高版本,我相信您将需要对正则表达式(或正则表达式)的支持来实现您的目标。您需要编写一个CLR函数。这里有一个(稍微过时的)例子:他们说使用了mySQL 5.5。但是如果我没有弄错的话,在mySQL中“REGEXP”是可能的,但是在我的情况下,如果您使用的是mySQL,那么请尝试检查
SELECT * 
FROM yourtable 
WHERE string_column REGEXP '^[0-9]+$'