SQL– tag –
-
SQL
SQL:半角 全角 変換 SQLだけで行う方法(Oracle / SQL Server / PostgreSQL)
SQLで半角 全角 変換 SQL を実行したい場面は、顧客データの正規化・文字種統一・基幹システム間のデータ連携などで非常に多く発生します。カタカナ・英数字・記号などは半角/全角の表記ゆれが多く、SQLだけで統一できるとバッチ処理やETLの品質が向上し... -
Oracle
【Oracle】ORA-03113:通信チャネルEOFエラーの原因と解決手順をわかりやすく解説
■ ORA-03113とは? ORA-03113: end-of-file on communication channel は、Oracle クライアントとサーバ間の通信が異常終了したとき に表示される代表的なエラーです。 平たく言うと、 「通信中にいきなり回線が切れた / Oracle が応答しなくなった」とい... -
SQL
Oracleで文字列操作を極める:SUBSTR・INSTR・REPLACEの活用術
Oracle SQLで文字列を自在に扱えるようになると、データ抽出や整形が格段に効率化します。本記事では、文字列操作の3大関数「SUBSTR」「INSTR」「REPLACE」の使い方をわかりやすく解説します。 1️⃣ SUBSTR:文字列の一部を取り出す SUBSTRは指定した位置か... -
Oracle
ORA-01722エラーが出たら?無効な数値エラーの原因と直し方
🔍 ORA-01722とは? Oracleで次のようなエラーが発生した経験はありませんか? [crayon-69856b30626b9832145418/] このエラーは日本語では「無効な数値」という意味で、数値型に変換できない文字列を数値として扱おうとしたときに発生します。Oracle初心者... -
Oracle
Oracle「ORA-02049: timeout: distributed transaction waiting for lock」エラーの原因と解決策まとめ
🧩 ORA-02049とは ORA-02049: timeout: distributed transaction waiting for lock は、Oracleデータベースの分散トランザクション(Distributed Transaction)で、ロック待ち状態が一定時間続いた結果、タイムアウトが発生したことを示すエラーです。通常... -
SQL
サブクエリを使ったUPDATE文:別テーブルの値で更新する方法
■ 概要 SQLでデータを更新する際、別のテーブルの値を参照してUPDATEしたい場面は多くあります。たとえば、マスタテーブルの最新情報でトランザクションテーブルを更新するケースなどです。 この記事では、Oracleデータベースを例に、サブクエリを使ったUP... -
Oracle
Oracle「ORA-00060: デッドロックが検出されました」発生原因と解決策
ORA-00060: deadlock detected while waiting for resource は、Oracleデータベースが相互にロックし合う処理を検出し、処理を強制終了した際に発生するエラーです。トランザクション同士が互いに待ち状態に陥るデッドロック(Deadlock)が原因です。 本記... -
SQL
SQL:実行計画(EXPLAIN PLAN)の読み方とボトルネックの見つけ方
データベースチューニングにおいて「どのSQLが遅いのか」だけでなく、「どの処理がボトルネックなのか」を正しく把握することは非常に重要です。そのための基本ツールが実行計画(EXPLAIN PLAN)です。 本記事では、Oracleを例に実行計画の見方とボトルネ... -
SQL
インデックスの仕組みを理解してSQLを劇的に高速化する方法
SQLの処理が遅いと感じたとき、多くの人が「サーバが遅いのでは?」と思いがちです。しかし、実際の原因の多くは「インデックス(索引)」の使い方にあります。この記事では、インデックスの基本構造から、実際のチューニング手法までを体系的に解説します... -
SQL
SQL:MERGE文でINSERTとUPDATEを一度に行う効率的な方法
MERGE文とは? SQLのMERGE文は、対象テーブルにデータが存在する場合はUPDATE、存在しない場合はINSERTを1回の処理でまとめて行える便利な構文です。従来は「UPDATE → 該当しなければINSERT」といった2回の処理が必要でしたが、MERGEを使うことで1回のSQL...


