我在mysql中有一个包含客户姓名和电话号码的表,我想选择电话号码只包含数字的客户,因为有些客户的电话号码是错误的,并且包含特殊的字符和字母。
p8h8hvxi1#
假设你的table被叫来了 customer ,带列 phone ,下面的查询返回行,其中 phone 只有数字。
customer
phone
SELECT * FROM customer WHERE phone REGEXP '^[0-9]+$';
i2loujxw2#
1) 您可以将数据库字段设置为“int”数据类型,并首先对用户输入进行验证。这样用户就不会输入错误的模式。2) 对于旧记录,获取所有结果并用编程语言执行。如果是php,可以使用ctype\u digit()或is\u numeric检查字段是否只包含数值。
2条答案
按热度按时间p8h8hvxi1#
假设你的table被叫来了
customer
,带列phone
,下面的查询返回行,其中phone
只有数字。i2loujxw2#
1) 您可以将数据库字段设置为“int”数据类型,并首先对用户输入进行验证。这样用户就不会输入错误的模式。
2) 对于旧记录,获取所有结果并用编程语言执行。如果是php,可以使用ctype\u digit()或is\u numeric检查字段是否只包含数值。