SQL

【MySQL】ロックを確認する方法|SHOW PROCESSLIST・InnoDBトランザクション・待機SQLの調査

MySQLでロック待ちや処理停止が起きたときに、SHOW PROCESSLIST、INNODB_TRX、data_locks、data_lock_waits、SHOW ENGINE INNODB STATUSで待機SQLとブロック元を確認する手順をまとめます。
SQL

【SQL Server】空白を削除する方法|TRIM・LTRIM・RTRIM・REPLACEで前後・全角スペースを除去

SQL Serverで空白を削除する方法を整理します。TRIM、LTRIM、RTRIM、REPLACEで前後の空白、全角スペース、タブ、改行を除去するSQL例と注意点を扱います。
SQL

【SQL Server】LIMITの代わりに使うTOP・OFFSET FETCH|件数指定・ページング・ROW_NUMBERの使い分け

SQL ServerでLIMITの代わりに使うTOP、OFFSET FETCH、ROW_NUMBERを整理します。件数指定、ページング、グループごとの上位N件、ORDER BYや性能面の注意点まで扱います。
SQL

【SQL Server】複合インデックスの列順の決め方|等価条件・範囲条件・ORDER BYの考え方

SQL Serverの複合インデックスで列順をどう決めるかを整理します。等価条件、範囲条件、ORDER BY、JOIN、INCLUDE句、Missing Index提案の見直しまで扱います。
SQL

【SQL Server】Missing Indexの見方|不足インデックス提案をそのまま作ってはいけない理由

SQL ServerのMissing Indexの見方を整理します。実行計画の不足インデックス提案、DMVの確認SQL、そのまま作る危険性、候補の除外、既存インデックスとの統合、作成前後の検証まで扱います。
SQL

【SQL Server】インデックス断片化を確認・再構築する方法|REBUILD・REORGANIZE・sys.dm_db_index_physical_stats

SQL Serverのインデックス断片化を確認し、REBUILD・REORGANIZEを使い分ける方法を整理します。sys.dm_db_index_physical_stats、page_count、page density、統計情報、権限、ログ容量、実行前後の確認まで扱います。
SQL

【SQL Server】カバリングインデックスとは|INCLUDE句・Key Lookup削減・遅いSQL対策

SQL Serverのカバリングインデックスとは何か、INCLUDE句でKey Lookupを減らす考え方、キー列と付加列の選び方、作成前後の確認方法、作成してよいケースを実務向けに整理します。
SQL

【SQL Server】インデックスが使われない原因|暗黙変換・関数・LIKE・複合インデックスの落とし穴

SQL Serverでインデックスが使われない原因を、暗黙変換、列側関数、LIKE、複合インデックスの列順、OR条件、Key Lookup、統計情報、実行計画の確認方法から整理します。
SQL

【SQL Server】Query Storeの使い方|遅いSQL・実行計画の変更・性能劣化を調査

SQL Server Query Storeの使い方を、設定確認、有効化、遅いSQLの抽出、実行計画の変更、性能劣化、待機統計、プラン強制、Query Storeヒントまで整理します。
SQL

【SQL Server】パラメータスニッフィングとは|実行計画が変わる原因と対処法

SQL Serverのパラメータスニッフィングで実行計画が変わる原因と、OPTION (RECOMPILE)、OPTIMIZE FOR UNKNOWN、OPTIMIZE FOR、統計情報、SQL Server 2022のParameter Sensitive Plan最適化まで整理します。
SQL

【SQL Server】統計情報を更新する方法|UPDATE STATISTICS・AUTO_UPDATE_STATISTICSで遅いSQLを改善

SQL Serverの統計情報を更新する方法を、UPDATE STATISTICS、sp_updatestats、AUTO_UPDATE_STATISTICS、sys.dm_db_stats_properties、FULLSCANやSAMPLEの使い分け、遅いSQL調査の流れで整理します。
SQL

【SQL Server】実行計画の見方|Table Scan・Index Seek・Key Lookupで遅いSQLを調査

SQL Serverの実行計画の見方を、推定実行計画と実際の実行計画の違い、Table Scan、Index Seek、Key Lookup、Missing Index、SortやHash Match、STATISTICS IOを使った遅いSQL調査の流れで整理します。
SQL

【SQL Server】tempdbが肥大化する原因と確認方法|一時テーブル・ソート・バージョンストア・空き容量対策

SQL Serverのtempdbが肥大化する原因を、一時テーブル、内部オブジェクト、ソート、ハッシュ処理、バージョンストア、長時間トランザクションから切り分けます。
SQL

【SQL Server】トランザクションログがいっぱいになる原因と対処法|ログ肥大化・復旧モデル・DBCC SQLPERF

SQL Serverでトランザクションログがいっぱいになる原因を、エラー9002、DBCC SQLPERF、log_reuse_wait_desc、復旧モデル、ログバックアップ、長時間トランザクションから切り分けます。
SQL

【SQL Server】デッドロックの原因と確認方法|エラー1205・デッドロックグラフ・回避策

SQL Serverのデッドロックで発生するエラー1205の原因と確認方法を、デッドロックグラフ、system_health、Extended Events、再試行実装、予防策まで整理します。
SQL

【SQL Server】テーブルロックを確認するSQL|sys.dm_tran_locks・sp_who2・ブロッキング調査

SQL Serverでテーブルロックやブロッキングを確認するSQLを、sys.dm_tran_locks・sys.dm_exec_requests・sp_who2の使い分けから解除前の注意点まで整理します。
Oracle

【Oracle】ORA-01795: リストに指定できる式の最大数は1000です の原因と回避方法

ORA-01795は、IN句などのリストに1000個を超える値を指定したときに起きるOracleエラーです。分割OR、一時表、JOIN、EXISTS、アプリ側の分割処理まで実務向けに整理します。
Oracle

【Oracle】ORA-00913: 値の個数が多すぎます の原因と解決方法

ORA-00913「値の個数が多すぎます」は、列数と値の数が合っていないときに起きるエラーです。INSERT、INSERT SELECT、サブクエリ、IN句で最初に見る箇所と修正例を整理します。
Oracle

【Oracle】expdpオプション一覧|よく使うパラメータ早見表・parfile例

Oracle expdpのよく使うオプションを目的別に整理。基本構文、対象指定、条件付きエクスポート、圧縮・並列化、parfile例までまとめます。
Oracle

【Oracle】V$SQLAREA・V$SQLTEXTとは|SQL本文・実行統計を確認する

OracleのV$SQLAREA・V$SQLTEXTとは何かを解説。SQL_ID検索、長文SQLの復元、実行統計の見方まで整理します。