• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:検索数の取得について)

検索数の取得について

このQ&Aのポイント
  • 勉強用に郵便番号のデータベースを作成しています。
  • DB_PagerとDBを使い検索の効率化を図りたいと思っています。
  • 総カウント数取得用のSQLを実行せずにDBのlimitQuery()を実行することはできないのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

命題が微妙に矛盾している気がします。 総カウントしないで、総カウント数が得られる わけがないのでは? しかもlikeで不定形のデータを検索するのですから カウントせずにでてくるとも思えません。 もちろん全てのデータを読み出してしまえば 配列の序数をみればわかる・・・とか考えられますが それじゃもっと遅くなりpager意味ないですし。 >1秒から2秒短縮される もとがどのくらいかかっているかもわからないので なんともいえませんが、綺麗に正規化しているなら 何百万件もないかぎり秒単位の処理負荷がかかって いるともおもえません。 もしなんでしたらsql発行前と後の時間差をとって みてはいかがでしょうか?

YUTAKUN007
質問者

お礼

書き方が悪かったんですが 総カウント数=検索ヒット数です。 いろいろ調べた結果 select SQL_CALC_FOUND_ROWS * from hoge 条件 limit 0,50 で検索総数を引き出し SELECT FOUND_ROWS()で総検索数を取り出す方式で落ち着きました。 ご迷惑おかけ致しました。