Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.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
Php 为什么mysql查询通过“从两个表中选择”;在;这是一个缓慢的查询_Php_Mysql - Fatal编程技术网

Php 为什么mysql查询通过“从两个表中选择”;在;这是一个缓慢的查询

Php 为什么mysql查询通过“从两个表中选择”;在;这是一个缓慢的查询,php,mysql,Php,Mysql,我有一个包含如下客户id的两个表: (SELECT * FROM customers WHERE cellular = '$cellular' OR id IN(SELECT customer FROM clients WHERE number=$cellular ) ) 当我搜索customer cellular client或cellular时,这个mysql查询需要30秒。 我怎样才能更快呢?试试MySQLjoin SELECT * FROM customers left join

我有一个包含如下客户id的两个表:

(SELECT * FROM customers WHERE cellular = '$cellular' OR  id  IN(SELECT customer FROM clients WHERE number=$cellular  ) )
当我搜索customer cellular client或cellular时,这个mysql查询需要30秒。
我怎样才能更快呢?

试试MySQL
join

SELECT * FROM customers left join clients 
on customers.id=clients.customer 
where clients.number=$cellular or customers.cellular = '$cellular'
或者尝试以下查询:-

SELECT * FROM customers inner join clients 
on customers.id=clients.customer 
where clients.number=$cellular or customers.cellular = '$cellular'

在不知道表结构(带索引)的情况下,解释输出,两个表中的行数,您希望我们如何回答这个问题?customers=2447行,id为index clients=1102行,客户索引为customers.id和clients.customer是相同的数字解释输出在哪里?在这两个表中是否对蜂窝和数字字段进行了索引?但是老实说,即使没有索引,mysql也不应该有3.5k行的问题,所以问题可能在其他地方(mysql配置?)谢谢你!您帮助我和mysql查询速度非常快!谢谢这是我的荣幸:)@QadahMohammed