SQLで日付条件を使ってデータを抽出したい場合、代表的な書き方として BETWEEN や >= / <=(範囲指定) を利用します。しかし、実務では 時間を含むデータ や 境界値の違い により、意図したデータが取得できないケース …



SQLで日付条件を使ってデータを抽出したい場合、代表的な書き方として BETWEEN や >= / <=(範囲指定) を利用します。しかし、実務では 時間を含むデータ や 境界値の違い により、意図したデータが取得できないケース …

Oracleデータベースで PL/SQL を扱っていると、「ORA-06512」 がセットで表示されるエラーに遭遇することがあります。 このエラー自体は “直接の原因” ではありませんが、「どこでエラーが発生したか(行番号)」を示す重要なヒ …

SQLで集計処理を行う際に必ず出てくるのが WHERE句 と HAVING句 の違いです。どちらも「条件を絞り込む」ための構文ですが、役割が明確に異なります。この記事では、 HAVING句を使うべきケース と WHEREとの使い分け をわか …

はじめに Oracleで最もよく見るエラーの1つが ORA-00001:一意制約(UNIQUE制約)違反。INSERT/UPDATE で突然エラーになり、原因が分かりづらいケースも多いです。 本記事では、UNIQUE制約でハマりやすいポイン …

Oracleデータベースに接続しようとしたとき、「ORA-12154: TNS: 指定された接続識別子を解決できませんでした」 というエラーが出て焦ったことはありませんか? これはOracle初心者はもちろん、ベテランでも環境構築時によく遭 …

Oracle DBへ接続しようとした際にORA-03135: connection lost contact(接続が失われました)というエラーが発生することがあります。 特にバッチ処理中や、長時間実行するSQL、アプリケーション側からの接続 …

データベースを長く運用していると、アプリのバグやテストデータの混入、複数サーバ間複製のトラブルなどが原因で、重複データが発生することがあります。しかし、安易に DELETE を実行すると必要なデータまで消えてしまう危険があります。 そこで本 …

Oracle接続時に発生するエラー 「ORA-12638:資格証明の取出しに失敗しました。」 は、クライアント側の認証設定が原因で SQL*Plus やアプリケーション接続ができなくなるケースに多く見られます。特に Windows環境で O …

中央値を使う場面 中央値(MEDIAN)は、極端な値(外れ値)の影響を受けにくい指標として、業務システムやデータ分析でよく使われます。例:処理時間の中央値、売上の中央値、レスポンス時間の中央値など。 SQLではDBMSによって書き方が大きく …

大量データを扱うシステムでは、「DELETE文が異常に遅い」「1000件削除するだけで何分もかかる」という現象は珍しくありません。 実際、筆者の環境でも 1500万件のテーブル DELETE 1件 = 約1.2秒 DELETE 100件 = …