Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过mysql表中的忽略破折号按电话号码获取用户数据_Mysql_Sql - Fatal编程技术网

通过mysql表中的忽略破折号按电话号码获取用户数据

通过mysql表中的忽略破折号按电话号码获取用户数据,mysql,sql,Mysql,Sql,我有一个mysql用户表,如下所示: id name phone ---------------------------- 1 John +1-32-5435-2343 2 Tom +92-32-43434-233 3 Eve +5-323-43-23234 $phoneNumber='+13254352343' 如何通过忽略破折号执行where查询以返回与此电话号码匹配的用户 我知道的是: SELECT * F

我有一个mysql用户表,如下所示:

id    name       phone
----------------------------
1     John       +1-32-5435-2343
2     Tom        +92-32-43434-233
3     Eve        +5-323-43-23234
$phoneNumber='+13254352343'

如何通过忽略破折号执行where查询以返回与此电话号码匹配的用户

我知道的是:

SELECT * FROM users WHERE phone = $phoneNumber

一种方法是替换用于比较的破折号:

where replace(phone, '-', '') = ?
是比较值的参数占位符。不要在查询字符串中添加文字值

注意:这会阻止使用索引