SQL– tag –
-
SQL
SQL:マテリアライズドビューで再計算コストを削減する方法
マテリアライズドビューを利用すると、集計や結合を毎回実行せずに済むため、SQLの再計算コストを大幅に削減できます。特に大量データを扱う環境では、通常のビューや都度集計と比べてCPU負荷とディスクI/Oを抑えられます。本記事では、マテリアライズドビ... -
SQL
ORDER BY の隠れたテクニック!複数条件やNULL対策まで解説
ORDER BY句は「並び替え」だけの機能ではありません。複数条件の指定、昇順・降順の組み合わせ、NULLの扱い、条件付き並び替え(CASE式)まで理解すると、集計結果や検索結果の品質が大きく向上します。単純に「ORDER BY 列名」だけを書いている状態は、SQ... -
SQL
SQL DISTINCTで重複排除!使いどころと使いすぎ注意ポイント
SQLでデータを取得していると、「同じ値が何度も表示される」「一覧を作りたいだけなのに重複行が多い」といった状況に直面することがあります。そのようなときに使われる代表的な構文が DISTINCT です。 DISTINCT は非常に便利な一方で、仕組みを正しく理... -
SQL
SQL サブクエリ vs JOIN:どちらを使うべきか?速度・可読性で比較
SQLを書いていると、「この処理はサブクエリで書くべきか、それとも JOIN を使うべきか」と悩む場面は少なくありません。どちらも同じ結果を取得できるケースが多いため、何となく慣れている書き方を選んでしまう方も多いのではないでしょうか。 しかし、... -
Oracle
Oracle「 ORA-00907 : 右括弧がありません 」よくある原因と対処法
Oracle Database を使用して SQL を実行した際に、「ORA-00907: 右括弧がありません」というエラーが表示されることがあります。 このエラーは一見すると単純な構文ミスのように見えますが、実際には原因が複数あり、慣れていないと修正に時間がかかりがち... -
SQL
SELECT文が遅いときにチェックすべきポイント10選
データベースを利用したシステムでは、SELECT文の実行速度が全体のパフォーマンスに大きく影響します。画面表示が遅い、バッチ処理が終わらない、APIの応答が悪いといった問題の多くは、SELECT文の遅延が原因で発生します。 本記事では、SELECT文が遅いと... -
SQL
SQL:INDEXが効かない理由 – LIKE検索・関数使用・暗黙的変換に注意
SQLをチューニングする際、「INDEXを作成したのに処理が遅い」「想定通りにINDEXが使われていない」と感じた経験は多いのではないでしょうか。この問題は、単純にINDEXが不足しているのではなく、SQLの書き方そのものが原因であるケースが非常に多く見られ... -
SQL
SQL:全角・半角スペースを削除したい時は REPLACE を使えば解決
SQLで文字列を扱っていると、「見た目は同じなのに一致しない」「不要な空白が原因で検索や比較がうまくいかない」といった問題に直面することがあります。特に、日本語データを扱う場合は、半角スペースと全角スペースが混在しやすく、意図しない不具合の... -
Oracle
ORA-00979 : GROUP BYの式ではありません。 の原因と正しい書き方
Oracle Database を使用して SQL を実行した際に、 [crayon-69853c171837d556986865/] というエラーが発生することがあります。このエラーは GROUP BY 句の理解が不十分な場合に必ず遭遇する代表的なエラー であり、原因は明確です。 本記事では、 ORA-009... -
SQL
SQL:グループ内で最大値の行を取得したい時の書き方
SQLを使用してデータを集計していると、「グループごとに最大値を持つ行そのものを取得したい」という場面は非常に多くあります。 例えば、以下のような要件です。 部署ごとに最も給与が高い社員の行を取得したい 商品ごとに最新の更新日時のレコードを取...










