これはSQLサーバーの私のSQLです:
SELECT user_Name ,user_pass ,user_hometown FROM user_baseinfo
場合によっては、列が null になることがあります。その場合は、デフォルト値に置き換えたいと思います。
これはSQLサーバーの私のSQLです:
SELECT user_Name ,user_pass ,user_hometown FROM user_baseinfo
場合によっては、列が null になることがあります。その場合は、デフォルト値に置き換えたいと思います。
SELECT
ISNULL(user_Name, 'Unknown Name') AS user_Name,
ISNULL(user_pass, 'Unknown Pass') AS user_pass,
ISNULL(user_hometown, 'Unknown Hometown') AS user_hometown
FROM user_baseinfo
ISNULL
ただし、最初の引数の型が優先されることに注意してください。これにより、最初の引数の列の型がデフォルト値よりも短い場合、デフォルト値の望ましくないカットが発生する可能性があります。そのような場合COALESCE
は、より良い選択です。
以下は、 と の違いを示す例ISNULL
ですCOALESCE
。
CREATE TABLE #Sample (Value1 varchar(100), Value2 char(3));
INSERT INTO #Sample (Value1, Value2)
VALUES
('AAA', 'AAA'),
('BBB', 'BBB'),
('CCC', 'CCC'),
(NULL, NULL);
SELECT
ISNULL(Value1, 'Default') AS Value1,
ISNULL(Value2, 'Default') AS Value2
FROM #Sample;
SELECT
COALESCE(Value1, 'Default') AS Value1,
COALESCE(Value2, 'Default') AS Value2
FROM #Sample;
が使用されている場合にDefault
削減されることを確認してください。Def
ISNULL
DEFAULT
キーワードを使いたい。
ウェブサイトからの例
CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255) DEFAULT 'Sandnes'
)
ここにサイトへのリンクがあります。
既存の行の場合 (列が であると仮定varchar
)
ALTER TABLE TableName ADD CONSTRAINT ConstraintName DEFAULT N'Default Value' FOR ColumnName;