Tips17. count(*)は遅いのか-PostgreSQL編-
引き続き、 Tips.6 本当にCOUNT(*)は遅いのか?COUNT(列名)は速いのか?~処理時間を計測~ での、Oracleでの count(*) が遅くなるという件のPostgreSQL版です。
環境については前回同様、 ...
Tips10. マテビューの効果的な使い方。
正しくは「マテリアライズド・ビュー(MATERIALIZED VIEW)」と呼びます。
通常のビュー(VIEW)というオブジェクトは、実体を持たず、SQLの定義があるだけですが、マテリアライズド・ビューは ...
Tips9.SQLの発行回数を減らす
SQLチューニングの方法として良くある方法に「SQLの発行回数を減らす」というのがあります。
簡単に言われますが、では具体的にどのようにしてSQLは纏められていくのでしょうか。
簡単なケースとしては、下記のような例 ...
Tips8.チューニングの第一歩、SQL発行回数とインデックス
データベースのパフォーマンス・チューニングというと、難しい印象があるのかもしれません。
「チューニングは難しいか」と問われると、正直一言では何とも答えられません。
簡単なチューニングもあれば、難しいチューニングもあ ...
Tips.7 続)本当にCOUNT(*)は遅いのか?COUNT(列名)は速いのか?~実行計画を確認~
前回は、COUNT(*)が必ずしも遅いわけではないことはおわかり頂けたと思います。
もう一つ検証したいポイントがあります。
よく言われている「COUNT(*)は全表走査(FULLSCAN)になるので遅い」という点です。 ...
Tips.6 本当にCOUNT(*)は遅いのか?COUNT(列名)は速いのか?~処理時間を計測~
SELECT文であるテーブルの件数そのものを取得したい場合に、どのようなSQLを書くでしょうか?
通常は「SELECT COUNT(*) FROM ;」だと思うのですが。。。
しかし、いろいろ調べてみると、COUN ...
Tips3. COUNT(*)の方がCOUNT(1)より速い?!
COUNT関数を使って件数を取得する際に、COUNT(*)と書く派、COUNT(1)と書く派に分かれます。
COUNT(1)と書く人は、恐らく若かりし頃に「COUNT(*)を使うと実行計画がFULLSCANになるので遅くな ...
Tips1. Oracleのパフォーマンス問題~存在チェックが遅い~
もう、世の中的にはPL/SQLも古い言語に含まれると思うのですが、未だ存在チェックに暗黙カーソルのCOUNTを使う人がいます。
若者ならまだしも、そこそこの単価をもらっているベテランプログラ ...