我知道这AS
是用来创建别名的。因此,将一个长名称别名为一个较短名称是有意义的。但是,我看到一个SQL
查询NULL as ColumnName
这意味着什么?
SELECT *, NULL as aColumn
我知道这AS
是用来创建别名的。因此,将一个长名称别名为一个较短名称是有意义的。但是,我看到一个SQL
查询NULL as ColumnName
这意味着什么?
SELECT *, NULL as aColumn
别名可以以多种方式使用,而不仅仅是缩短长列名。
在这种情况下,您的示例意味着您要返回一个始终包含 的列NULL
,并且它的别名/列名是aColumn
。
当您使用计算值时,也可以使用别名,例如Column1 + Column2 AS Column3
.
使用“Null AS [ColumnA]”联合或连接数据集时,可以快速确保创建一个完整的数据集,以便以后更新,并且不需要在任何源表中创建新列。
这意味着它"aColumn"
只有 Null 值。稍后可以使用实际值更新此列,但选择时为空。
---我不确定您是否了解 SSIS,但这种机制对于 SSIS 将变量值添加到“空”列很有用。
在语句结果中,我们有一个包含所有 NULL 值的列。我们可以使用别名来引用该列。
在您的情况下,查询从表中选择所有记录,并且每个结果记录都有仅包含 NULL 值的附加列。如果我们以后想引用这个结果集和其他地方的附加列,我们应该使用别名。
使用 SELECT 时,您可以直接将值传递给列。所以像:
SELECT ID, Name, 'None' AS Hobbies, 0 AS NumberOfPets, NULL AS Picture, '' AS Adress
已验证。
当使用 UNION/UNION ALL 时,它可以用来很好地格式化查询输出。
查询结果可以有一个包含所有 NULL 值的新列。在 SQL Server 中,我们可以这样做
SELECT *, CAST(NULL AS <data-type>) AS as aColumn
例如
SELECT *, CAST(NULL AS BIGINT) AS as aColumn
不使用 as SELECT ID , Name , 'None' AS Hobbies , 0 AS NumberOfPets , NULL Picture 怎么样
通常在将基于您刚刚选择的表的计算列插入另一个表时,在全选末尾添加 NULL 作为 [Column] 名称。
UPDATE #TempTable SET aColumn = Column1 + Column2 WHERE ...
然后将结果导出或保存到另一个表。