2018-12-18Oracle, PL/SQL, パフォーマンス

SQLチューニングの方法として良くある方法に「SQLの発行回数を減らす」というのがあります。 簡単に言われますが、では具体的にどのようにしてSQLは纏められていくのでしょうか。 簡単なケースとしては、下記のような例が考えられます。 部門別に ...

2019-02-19Oracle, PL/SQL, パフォーマンス

データベースのパフォーマンス・チューニングというと、難しい印象があるのかもしれません。 「チューニングは難しいか」と問われると、正直一言では何とも答えられません。 簡単なチューニングもあれば、難しいチューニングもあります。 ただ、少し言い換 ...

2018-09-24Oracle, パフォーマンス

前回は、COUNT(*)が必ずしも遅いわけではないことはおわかり頂けたと思います。 もう一つ検証したいポイントがあります。 よく言われている「COUNT(*)は全表走査(FULLSCAN)になるので遅い」という点です。 試しに前回実行した次 ...

2018-09-24Oracle, パフォーマンス

SELECT文であるテーブルの件数そのものを取得したい場合に、どのようなSQLを書くでしょうか? 通常は「SELECT COUNT(*) FROM ;」だと思うのですが。。。 しかし、いろいろ調べてみると、COUNT(*)は遅いので、使用す ...

2018-12-17Oracle, パフォーマンス

COUNT関数を使って件数を取得する際に、COUNT(*)と書く派、COUNT(1)と書く派に分かれます。 COUNT(1)と書く人は、恐らく若かりし頃に「COUNT(*)を使うと実行計画がFULLSCANになるので遅くなる」とか言われたの ...

2018-12-17Oracle, PL/SQL, パフォーマンス

存在チェックにCOUNTを使わない! もう、世の中的にはPL/SQLも古い言語に含まれると思うのですが、未だ存在チェックに暗黙カーソルのCOUNTを使う人がいます。 若者ならまだしも、そこそこの単価をもらっているベテランプログラマでも、こん ...