Oracleデータベースでアプリケーション開発をしていると、時々遭遇するエラーが ORA-01403: no data found です。特にPL/SQLやSELECT INTO構文を使った処理でよく発生します。 この記事では、 ORA-0 …



Oracleデータベースでアプリケーション開発をしていると、時々遭遇するエラーが ORA-01403: no data found です。特にPL/SQLやSELECT INTO構文を使った処理でよく発生します。 この記事では、 ORA-0 …

OracleでINSERT文を実行した際、次のようなエラーが表示されることがあります。
|
1 |
ORA-01400: NULLを挿入できません ("SCHEMA"."TABLE"."COLUMN") |
このエラーは、NOT NULL制約が設定されているカラムにNULL値を挿入しようとした …

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

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

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

SQLのLIKE演算子は、特定の文字列パターンに一致するデータを検索する際に使用されます。この検索パターンを指定するために、ワイルドカードと呼ばれる特別な記号が使われます。主なワイルドカードは、%(パーセント)と_(アンダースコア)の2種類 …

副問合せ(サブクエリ)をWHERE句やHAVING句で使った際、「比較できません」「単一行サブクエリで複数行が返りました」などのエラーに遭遇することがあります。この記事では、比較できないケースの原因と、正しく比較するための対処方法をわかりや …

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

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

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