まとまりのないブログ

something which something is something

mysql sql

SQL_CALC_FOUND_ROWSの効果

投稿日:

mysqlでは行数のカウントをするのにSQL_CALC_FOUND_ROWSというのを使うことができるようだが、where句に条件を指定した場合だとcount(*)でレコードをカウントする場合と大差ない結果となった。SQL_CALC_FOUND_ROWSを使うことで速度的には向上は見込めない。レコード数が100万件を超える場合にwhere句で条件を指定してそのレコード数をカウントするという場合には、一度グループ化で行数をカウントした後でその結果を合計したほうが若干速く処理することができる。

-mysql, sql

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

no image

UbuntuのMySQLの起動と停止

UbuntuにMySQLをソースから/usr/local/mysqlにインストールした場合。

no image

mysqlのmy.iniの標準値のメモ

mysqlのmy.iniファイルのサンプルの設定ファイルの値がどのように設定されているかチェック。mysqldの設定例を抜き出してみる。設定するときの参考にはなるだろうと思うので。

no image

Blitzという名前のついたバルクメモリ

PCがやたらとフリーズするのでなんでだろうかと悩んでいた原因がわかった。アプライドの特価品メモリを使っていたのが原因だった。メモリの相性が悪かった、というより不良品のメモリであるというのが正しい表現だ …

no image

myisamchkの修復時に作成されるTMDファイル

テーブルの修復をしようとしたらtempfileが作成できないという下記のエラーが発生した。

no image

結果の行数をカウントする

mysqlで結果の行数をカウントするsql文は、 seletc count(*) from foo; で取得するのが最も簡単ではあるけれど、レコード数が膨大な場合にはパフォーマンスの面で問題になる場合 …