小编Jos*_*ira的帖子

SQL Server为空列选择的数据类型

在这个问题之后:" SQL:作为ColumnName的NULL意味着什么 "我对sql server为此查询中的列选择的数据类型感到好奇:

SELECT NULL as aColumn
Run Code Online (Sandbox Code Playgroud)

所以我运行了这个测试:

select * from (select null as aaa) resulta
UNION ALL
select 6.54
Run Code Online (Sandbox Code Playgroud)

Yelds两行:

aaa
---------------------------------------
NULL
6.54
Run Code Online (Sandbox Code Playgroud)

这一个:

select * from (select null as aaa) resulta
UNION ALL
select 'ab'
Run Code Online (Sandbox Code Playgroud)

在SQL Server 2000中大喊:

aaa
-----------
NULL
Msg 245, Level 16, State 1, Line 5
Syntax error converting the varchar value 'ab' to a column of data type int.
Run Code Online (Sandbox Code Playgroud)

并在SQL Server 2008中给出了这样的:

aaa
----
NULL
ab
Run Code Online (Sandbox Code Playgroud)

那么有什么猜测sql server为全空列选择什么数据类型?

sql t-sql sql-server

8
推荐指数
1
解决办法
4406
查看次数

标签 统计

sql ×1

sql-server ×1

t-sql ×1