あるテーブルから別のテーブルにデータを移動しています。日付フィールドをnullからデフォルト値に変更したいとします。 SQL Server(2000)でこれを行う最善の方法は何ですか?SQL Serverのselect文でnullの値を代入することはできますか?
私はAccessでIIf関数に似たものが欲しいです。 IIFと同様(DateBeginはnull、#1/1/2000#、DateBegin)
あるテーブルから別のテーブルにデータを移動しています。日付フィールドをnullからデフォルト値に変更したいとします。 SQL Server(2000)でこれを行う最善の方法は何ですか?SQL Serverのselect文でnullの値を代入することはできますか?
私はAccessでIIf関数に似たものが欲しいです。 IIFと同様(DateBeginはnull、#1/1/2000#、DateBegin)
INSERT INTO destTable (dateColumn, otherColumn)
SELECT ISNULL(dateColumn, '2000-01-01'), otherColumn
FROM sourceTable
ISNULLオペレータを使用してください。
これを行うにはcoalesceを使用できます。
あなたは、SELECT文でCOALESCE演算子を使用することができます。
SELECT ..., COALESCE(datecolumn, 'default date') FROM SOURCE_TABLE
それは最初の非null値を返します。
ISNULLとCOALESCEの違いは何ですか?彼らはどちらもうまくいくように見えますが、isnullは私には簡単です。 1つはより良い実行しますか?これは1回限りのクエリでしたが、より良いケースがありますか? – Robert
ISNULLは1つの値でのみ使用できます。 COALESCEは複数の値で使用できます。 –