如果我有SQL查询:
select
project.Employee,
project.HoursQuantity,
convert(varchar(10), project.EntryDate, 120)
from db.Project as project
它将使用正确的列名返回ProjectHours和HoursQuantity,但会将EntryDate返回为(无列名)。
如何解决此问题或重命名列,以便标题会显示在返回给用户的表格上?
我认为数据会保留在同一列中,但我想它会转移到新列。我尝试了别名和其他一些东西,但它还没有工作。
答案 0 :(得分:8)
给它一个名称相同的alias
select
project.Employee,
project.HoursQuantity,
convert(varchar(10), project.EntryDate, 120) as EntryDate
from db.Project as project
答案 1 :(得分:0)
我首选的列别名方法是alias = expression
:
Bad Habits to Kick : Using AS instead of = for column aliases - Aaron Bertrand - 2012-01-23
select
project.Employee,
project.HoursQuantity,
EntryDate = convert(varchar(10), project.EntryDate, 120)
from db.Project as project
有效列别名方法:
select 1 as x; -- #1
select x = 1; -- #2
select 'x' = 1 ; -- #3
select [x] = 1 ; -- #4
select 1 x; -- #5
select 1 as 'x'; -- #6
select 1 'x'; -- #7
select 1 as [x]; -- #8
select 1 [x]; -- #9