该版本是带有SQL Server Management Studio的SQL Server 2012
我的作业要求我创建一个包含PeopleID
,HireDate
和TermDate
列的表格。 TermDate
将重命名为Current
,并将Null值合并为“当前员工”。这里的问题是TermDate
是一个空列,需要转换为文本列才能合并......
我尝试了很多调整,但我似乎无法弄明白。这是我目前的迭代。现在我收到了错误
Msg 102,Level 15,State 1,Line 5
' TermDate'附近的语法不正确。
代码:
select
PeopleID
,HireDate
,coalesce(convert(varchar(10), TermDate, 1) TermDate, 'Current Employee') as [Current]
from
WORKERS
感谢帮助
答案 0 :(得分:0)
为什么表达式中有两次TermDate
?您只需要一次作为convert()
的参数:
select PeopleID, HireDate,
coalesce(convert(varchar(10),TermDate, 1), 'Current Employee') as [Current]
from WORKERS;
答案 1 :(得分:0)
select PeopleID
,HireDate
,case
when TermDate is NULL then 'Current Employee')
else convert(varchar(10), TermDate, 1)
end as [Current]
from WORKERS