2017-02-22 9 views
0

このクエリとフィールドでASキーワードの使用を説明してもらえますか?カラムIsShow、IsEnabled、IsClose、XTypeがテーブルに存在しません

select distinct 1, rg.GroupName as DisplayName, rg.GroupName as GroupName, 
null as IsShow, 
null as [IsEnable], 
null as [IsClose], 
0 as XType, 
null as ID 
from dbo.m_Roles rg 
+4

Google「SQL-Server Alias」 – DVT

+0

@DVTは何も見つかりませんでした。お返事をありがとうございます。 – neo

答えて

1

後にカラム名を使用します。

ASは暗黙的にcolumn aliasです。二重大括弧と二重引用符は、エイリアスの名前に空白が含まれているとエラーを回避するためのものです。

1

Asこの場合、列の別名です。

Select 1 as 'one', 2 two, 3 [and three] 

列は、必ずしも結果セットに追加する任意のテーブルである必要はありません:。だから、結果セットには、これを試してみてくださいAS

+0

IsShow、IsEnabled、IsClose、XTypeの各列は、表m.Roles ..には存在しません。実行時に作成されます。私はこれがどのように起こるかを本当に明確にしていない。 – neo

+0

@neoこれを試してみよう。 'one'、2 two、3 and 3 'を選択してください。結果セットに追加するテーブルには、列は存在している必要はありません。 ASは列エイリアスに暗黙的に含まれています。角括弧と二重引用符は、エイリアスが名前に黒いスペースを持つときのエラーを避けるためのものです。 – Horaciux

+0

@horaciuxありがとう。間違いなく、私の理解を助ける。 – neo

関連する問題