MySQL查询指定字段不是数字与逗号的sql
核心sql语句
MySQL查询不包含数字的语句:
SELECT*FROMtestWHERE`name`regexp'[^0-9]';
MySQL查询纯数字的语句:
SELECT*FROMtestWHERE`name`regexp'[0-9]';
相关文章id,都是数字或者逗号那么下面语句MySQL查询不包含数字与逗号的语句:
SELECT*FROMtestWHERE`name`regexp'[^0-9,]';
MySQL查询某一列中不是数字
包含数字的列:
SELECT列名FROM表名WHERE列名REGEXP'[0-9]{1,}'
不包含数字的列:
SELECT列名FROM表名WHERE列名REGEXP'[0-9]{1,}'=0
mysql正则表达式查询非数字
想要查询字段age内容不是数字的正则表达式sql
SELECT`age`FROM`table_name`WHERE`age`REGEXP'^[^0-9]$';
或者
SELECT`age`FROM`table_name`WHERE`age`NOTREGEXP'^[0-9]$';
多个数字
select*fromtable_namewhere`age`REGEXP'[^0-9]{1,}'
MySQL中regexp运算符介绍
regexp运算符用来执行更复杂的字符串比较运算。(只能对字符串进行操作)
属于regexp运算符的特殊字符
^匹配字符串开始部分。例'^董',以董为开头的字符串。
$匹配字符串结束部分。
.匹配任意单个字符包括回车和新行。
*匹配星号之前的0个或多个字符的任何序列。(星号前可以不有)
+匹配加号之前的一个或多个字符的任何序列。(加号前必须有)
?匹配问号之前0个或多个字符。
{n}匹配括号前的内容出现n次的序列。
()匹配括号里的内容。
[abc]匹配方括号里出现的字符串abc。
[a-z]匹配方括号里出现的a-z之间的1个字符。
[^a-z]匹配方括号里出现不在a-z之间的1个字符。`
更多的内容可以参考这篇文章:https://www.nhooo.com/article/72928.htm