我知道AS
用於創建別名。因此,將一個長名稱作爲較短名稱是有道理的。但是,我看到SQL
查詢NULL as ColumnName
這意味着什麼?SQL:NULL作爲ColumnName暗示什麼
SELECT *, NULL as aColumn
我知道AS
用於創建別名。因此,將一個長名稱作爲較短名稱是有道理的。但是,我看到SQL
查詢NULL as ColumnName
這意味着什麼?SQL:NULL作爲ColumnName暗示什麼
SELECT *, NULL as aColumn
別名可以以多種方式使用,而不僅僅是爲了縮短長列名稱。
在這種情況下,您的示例意味着您返回的列始終包含NULL
,而其別名/列名稱爲aColumn
。
當您使用計算值時也可以使用別名,例如Column1 + Column2 AS Column3
。
我認爲他是對的 – Sachin
我也這麼認爲;)關於*爲什麼*他們寫了這樣的查詢,這是任何人的猜測。在寫完之後,除了返回所有的列以外,它還沒有做任何事情,再加上一個名爲'aColumn'的額外列。沒有看到任何周圍的代碼或業務流程,很難猜測查詢的意圖是什麼。 – LittleBobbyTables
此列的數據類型爲'int' –
在聲明結果中,我們有一列包含所有NULL值。我們可以使用別名來引用該列。
在你的情況下,查詢選擇表中的所有記錄,並且每個結果記錄具有僅包含NULL值的附加列。如果我們想在未來的其他地方參考這個結果集和其他列,我們應該使用別名。
這意味着"aColumn"
只有Null值。此列可以稍後用實際值進行更新,但選中時爲空。
---我不確定你是否瞭解SSIS,但是這種機制對於SSIS向「空」列添加變量值很有用。
只是爲了確定,SSIS意味着:SQL Server Integration Services? –
是的。您發佈的查詢可以用作源表,然後可以使用SSIS中設置的變量爲空列提供值。 – Echo
使用SELECT時,您可以直接將值傳遞給列。 因此類似於:
SELECT ID, Name, 'None' AS Hobbies, 0 AS NumberOfPets, NULL AS Picture, '' AS Adress
是否有效。
當使用UNION/UNION ALL時,它可用於很好地格式化查詢輸出。
如何在不使用的作爲 SELECT ID ,名稱 , '無' AS嗜好 ,0 AS NumberOfPets ,NULL圖片
一般在的末尾添加NULL作爲[列]名稱基於剛剛選擇的表插入另一個表時,將使用全選。
UPDATE #TempTable SET aColumn = Column1 + Column2 WHERE ...
然後將結果導出或保存到另一個表中。
查詢結果可以包含具有所有NULL值的新列。在SQL Server中,我們可以這樣做:
SELECT *, CAST(NULL AS <data-type>) AS as aColumn
例如,
SELECT *, CAST(NULL AS BIGINT) AS as aColumn
可以顯示整個查詢或更多的東西......像'選擇「1」 – Sachin
@sac添加查詢,因爲它代表 –
我覺得LittleBobbyTables的答案是正確的,從tablename'編號,這是一個* NULL *對於所有行的列的值... – Sachin