Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.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 MySQLi速度:多个查询还是一个查询_Php_Mysql_Mysqli - Fatal编程技术网

Php MySQLi速度:多个查询还是一个查询

Php MySQLi速度:多个查询还是一个查询,php,mysql,mysqli,Php,Mysql,Mysqli,我想从如下所示的数据库中获取数据: id - brand - type 1 Airbus plane 2 Boeing plane 3 Fokker plane 4 Toyota car 5 Mustang car 6 Peugeot car 7 Sparta bike 现在,我想在类型不同时输出一个。我可以通过两种方式来实现这一点: 一条准备好的语句,设置一个变量$current\u type,并将其值与数据库中的值进行检查 三份准备好的

我想从如下所示的数据库中获取数据:

id - brand - type
1    Airbus  plane
2    Boeing  plane
3    Fokker  plane
4    Toyota  car
5    Mustang car
6    Peugeot car
7    Sparta  bike
现在,我想在类型不同时输出一个

。我可以通过两种方式来实现这一点:

  • 一条准备好的语句,设置一个变量
    $current\u type
    ,并将其值与数据库中的值进行检查
  • 三份准备好的声明(针对每种类型,因为它们与飞机、汽车、自行车没有区别)

哪一个最快?我会说第一个,但第二个使我的代码看起来更好。我可以忽略速度差异吗?

第一个肯定更快,我更希望在PHP代码中有一个额外的临时变量,而不是两个额外的查询。在您的情况下,差异可能是可以忽略的,但我不会为了稍微整洁的代码而放弃这一点

使用一个查询并在php逻辑中处理其余的查询。这个问题似乎与主题无关,因为它是关于运行一个快速测试来找出答案的。对于这样的小数据:获取、分组(使用最方便的方法将其分为层次)、迭代(根据分组分为多个级别)、显示。使用排序(在索引上)可以帮助处理非常大的流(如果支持的话)结果集和更简单的分组算法——但是KISS。我不添加两个额外的查询。我仍然有一个,但它运行了多次,因为它在for循环中。谢谢你的评论。