Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 为select语句中的datacolumn指定默认值_Sql Server_Tsql_Syntax - Fatal编程技术网

Sql server 为select语句中的datacolumn指定默认值

Sql server 为select语句中的datacolumn指定默认值,sql-server,tsql,syntax,Sql Server,Tsql,Syntax,我想为select sql查询中的一列指定默认值,这样,如果该列的值为null,我就可以在记录集中获得该默认值。有什么办法可以这样做吗 例如: select col1 (some default value) from tblname; 如果您使用的是SqlServer,则可以使用CASE语句 例如: 当为空时选择case col1,然后从tblname中选择defaultval else col1 end 其中defaultval是默认值。defaultval的数据类型必须与col1的数据类

我想为select sql查询中的一列指定默认值,这样,如果该列的值为null,我就可以在记录集中获得该默认值。有什么办法可以这样做吗

例如:

select col1 (some default value) from tblname;

如果您使用的是SqlServer,则可以使用CASE语句

例如:

当为空时选择case col1,然后从tblname中选择defaultval else col1 end


其中defaultval是默认值。defaultval的数据类型必须与col1的数据类型相同。

最好使用ANSI兼容的函数:


您还可以读取比较COALESCE和的值。

“CASE col1 WHEN NULL THEN defaultval ELSE col1 END”将始终返回col1。针对NULL的相等性测试总是返回false。您需要使用“CASE WHEN col1为NULL THEN…”代替。
select
  isnull(col1, defaultvalue)
from
  tblname;
SELECT COALESCE(column_name, default_value) FROM table_name;