mysql - 检查列是否以非整数开头

标签 mysql regex case sql-like

我试图查看列值是否以整数开头。该列假定为 8 位数字,并且为 Integer。我有一个以字母开头的值,但由于某种原因我无法选出带有它的行。我试图将该值设置为空白,但该行没有被提取出来。

我尝试过使用 LIKE 和 REGEXP,但它们不起作用或者我使用它们的方式失败。

编辑:当我使用 REGEXP 时,出现异常 Can't parse SQL Query。当我转换为 int 时,它会出现数据转换错误,因为该值以字母开头。

示例1:

CASE 
WHEN Column LIKE '^[0-9]' THEN Column = ''
END

示例2:

CASE 
WHEN Column REGEXP '^[0-9]' THEN Column = ''
END

最佳答案

为了在选择过程中将不以数字开头的值转换为空字符串,您可以使用:

CASE 
  WHEN Column REGEXP '^[0-9]' THEN Column ELSE ''
END

关于mysql - 检查列是否以非整数开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39597341/

相关文章:

regex - 使用正则表达式和反向匹配,并将其通过管道传递给另一个命令

regex - 按分隔符拆分字符串并在新行上打印元素

mysql - SELECT MAX CASE 问题

sql - 将 bool 反馈列替换并压缩为 BigQuery 中的单个分数列

c# - 带颜色的开关/外壳

php - MySQLi/PHP语法错误

mysql - 将一个表中的行插入到另一个表中,但只插入那些没有重复的行

php - 从字符串中检索完整的电子邮件地址

mysql - 未知字符集 : 'utf8mb4'

mysql - 子查询通过更新返回多于 1 行