データベース レコードがない場合のデフォルト値の選択
指定された番号がデータベース テーブルに存在しない場合、指定された SQL ステートメントは失敗します。この記事では、このようなシナリオでクエリをサブクエリ内にカプセル化し、デフォルト値 NULL を割り当てるソリューションを紹介します。
クエリのカプセル化
元のクエリのカプセル化サブクエリ内で結果が存在しないことを効果的に NULL 値に変換します。このアプローチは、次のようなさまざまなデータベース管理システムと互換性があります。
実装
PostgreSQL、SQLite、SQL Server、およびMySQL
SELECT (SELECT id FROM tbl WHERE id = 9823474) AS id;
Oracle (DUAL から使用)表)
SELECT (SELECT id FROM tbl WHERE id = 9823474) AS id FROM DUAL;
Firebird
SELECT (SELECT id FROM tbl WHERE id = 9823474) AS id FROM RDB$DATABASE;
DB2
SELECT (SELECT id FROM tbl WHERE id = 9823474) AS id FROM SYSIBM.SYSDUMMY1;
このソリューションを実装することによりを使用すると、SQL ステートメントが、クエリされたデータはデータベースに存在しません。
以上が欠落しているデータベースレコードを処理し、SQL で NULL のデフォルト値を返す方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。