3

WHERE ステートメントを使用して行数をカウントするより高速なクエリはありますか? PHPで現在使用しているクエリは次のとおりです。

$result = mysql_query("SELECT SQL_NO_CACHE id FROM users WHERE user = '$tnuser'");
$total = mysql_num_rows($result);

テーブル エンジンは InnoDB で、ID は主キーで、ユーザーはインデックス化されています。このクエリは 1 秒間に 300 回以上実行されるため、パフォーマンスの向上は良好です。合計数は常に変化しており、ユーザーは頻繁に削除/追加されています。

ありがとうございました

4

1 に答える 1

4

通常、SQLの集計関数を使用して何かを数える方が高速です。たとえば、試してみることができます

SELECT COUNT(*) FROM users WHERE user = '$tnuser'
于 2012-12-26T18:38:01.513 に答える