gpt4 book ai didi

php - mysql查询速度的差异

转载 作者:行者123 更新时间:2023-11-29 04:52:47 30 4
gpt4 key购买 nike

假设我的数据库中有 1kk 条记录。

现在我需要选择一些数据,我还需要知道我选择了多少字段,所以我的问题是:

运行一个查询来计算这样的数据是否更好:

SELECT COUNT("id") from table where something = 'something'

然后再运行一个 querio 进行选择,如下所示:

SELECT 'some_field' from table where something = 'something';

或者也许最好只选择数据,然后用 php 像这样计算它:

count($rows);

或者也许有更好的方法来做到这一点,例如在一个查询中完成所有操作?

最佳答案

从字里行间,我想你可能想要的是 SQL_CALC_FOUND_ROWS .这允许您选择结果集的一部分(使用 LIMIT 子句),并且仍然在单个操作中计算匹配行的总数。您仍然使用两个查询,但数据中的实际搜索操作只发生一次:

// First get the results you want...
$result = mysql_query("
SELECT SQL_CALC_FOUND_ROWS
FROM `table`
WHERE `something` = 'something'
LIMIT 0, 10
");

// ...now get the total number of results
$numRows = mysql_query("
SELECT FOUND_ROWS()
");
$numRows = mysql_fetch_row($numRows);
$numRows = $numRows[0];

关于php - mysql查询速度的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9773582/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com