11

我在表格列pnum_s

我只需要获取那些行,列中的值pnum_s正好是 10 个符号,所有这些符号都只是数字

为此必须写什么查询?

我在尝试

SELECT * FROM mytable WHERE pnum_s REGEXP '^\d+$'

但这不会返回 0 行

4

4 回答 4

23

您正在寻找的模式是'^[0-9]{10}$''^[[:digit:]]{10}$'

一切都在手册中

于 2013-06-04T16:02:41.827 回答
6

我认为使用 Mysql 你会想要这样的东西:

^[[:digit:]]{10}$
于 2013-06-04T15:57:42.553 回答
6

查看参考页面。

http://dev.mysql.com/doc/refman/5.1/en/regexp.html#operator_regexp

你要找的是这个:

SELECT * FROM mytable WHERE pnum_s REGEXP '^[[:digit:]]{10}$';
于 2013-06-04T16:07:28.257 回答
2

试试这个模式:

'^[0-9]{10}$'
于 2013-06-04T15:57:54.880 回答