SQL中列值为空时如何返回默认值

SQL中列值为空时如何返回默认值,sql,sql-server,Sql,Sql Server,如何在SQL中列值为null时返回默认值可以使用COALESCE。请参阅以了解更多信息 SELECT COALESCE (NULL,'A') 当值为null并且希望返回默认值时,使用IsNull Select IsNull(YourColumn, defaultvalue) i.e. Select IsNull( CandidateName , ''), -This is string column and return default value '' IsNull(Ca

如何在SQL中列值为null时返回默认值可以使用COALESCE。请参阅以了解更多信息

SELECT COALESCE (NULL,'A')
当值为null并且希望返回默认值时,使用IsNull

Select IsNull(YourColumn, defaultvalue) 
i.e. 
Select IsNull( CandidateName , ''),  -This is string column and return default value ''
       IsNull(CandidateSalaryExpected, 0),  --This is Integer/Double/Numeric column and return default value 0
       IsNull(MaritalStatus , 0)  --0 - marital means unmarried, 1 means married. This is boolean value
也可以使用合并值。检查下面的链接


如果没有提供默认值,您可以将表设计为添加默认值,而不是返回默认值。参见下面的示例

CREATE TABLE DemoTable
(
ID INT,
Name VARCHAR(100),
RecordAddedOn DATETIME DEFAULT GETDATE()
)
您可以查看下面的链接,更好地了解默认约束


但是,如果要返回默认值,可以使用ISNULLColumnName,“default value”

当找到任何空值时,您似乎正在尝试使用默认值来实现列

你可以试试这个:

 SELECT COALESCE([dbo].YourTableName.[YourColumnName],'Default Value When Null Encountered') AS YourTableAlias  FROM [dbo].[YourTable]
使用真实样本进行测试:

请参见下面的“我的表格”列,其中某些FlatName为空

找到NULL时默认值的实查询:

查询的输出:


没有上下文,很难提供有用的建议。我认为你混淆了默认值和空值。在一行中插入一个空值作为一列,不会以某种方式促使db引擎用分配给该列的默认值替换该空值。如果您的问题基于插入到表中的应用程序中的代码,并且您希望刷新显示内容,则需要为其他人提供该上下文。您可以在设计表时设置默认值。当存在空值时,将自动显示默认值Check@MdFaridUddinKiron当INSERT命令未显式提供列的值时,将不会在列中插入默认值。
SELECT FlatId,COALESCE([dbo].[Flat].[FlatName],'Default Value When Null Encountered') AS FlatName, FlatDescription  FROM [dbo].[Flat]