SQL 将字符转换为数字
SQL Convert character to numeric
我有一列设置为字符,但用户可以插入数字。
我如何识别字段中的数字长度为 11 而不是字母?
示例:
样本数据{col1= aaaaaaaaaaa,11111122222}
select Col1
from
table
group by 1
having SUM(CHARACTER_LENGTH(Col1))=11
错误输出:aaaaaaaaaa
期望的输出:11111122222
简而言之,我需要检索 char 列中所有可以识别为数字且具有 11 位数字的值。
与similar to
and character_length()
:
select * from tablename
where (col similar to '[0-9]+') and character_length(col) = 11
或:
select * from tablename
where col similar to '[0-9]{11}'
参见demo。
我有一列设置为字符,但用户可以插入数字。
我如何识别字段中的数字长度为 11 而不是字母?
示例:
样本数据{col1= aaaaaaaaaaa,11111122222}
select Col1
from
table
group by 1
having SUM(CHARACTER_LENGTH(Col1))=11
错误输出:aaaaaaaaaa
期望的输出:11111122222
简而言之,我需要检索 char 列中所有可以识别为数字且具有 11 位数字的值。
与similar to
and character_length()
:
select * from tablename
where (col similar to '[0-9]+') and character_length(col) = 11
或:
select * from tablename
where col similar to '[0-9]{11}'
参见demo。