Sql server sql server作为错误,需要对话
我有这个CASE语法:Sql server sql server作为错误,需要对话,sql-server,Sql Server,我有这个CASE语法: CASE WHEN (dbo.Futuredial_Validation.[Error Code]='1') THEN (dbo.Futuredial_Validation.LocalTime AS att.Date_cleared) END AS att.Date_cleared 我在关键字“AS”附近遇到错误语法。 有人能告诉我是否可以像这样在case结构中使用AS吗?删除case语句中的别名名称 CASE WHEN dbo.Futuredial_Validati
CASE WHEN (dbo.Futuredial_Validation.[Error Code]='1')
THEN (dbo.Futuredial_Validation.LocalTime AS att.Date_cleared) END
AS att.Date_cleared
我在关键字“AS”附近遇到错误语法。
有人能告诉我是否可以像这样在case结构中使用AS吗?删除
case
语句中的别名
名称
CASE WHEN dbo.Futuredial_Validation.[Error Code]='1' THEN
dbo.Futuredial_Validation.LocalTime END AS [att.Date_cleared]
如果确实需要,也可以添加括号。添加不需要的括号会使查询和条件变得笨拙
另一个改进是在表中使用别名Futuredial\u Validation F
查询将是这样的
Select CASE WHEN F.[Error Code]='1' THEN F.LocalTime END AS [att.Date_cleared]
From dbo.Futuredial_Validation F
如注释中所述,最好避免在别名中使用
,否则必须使用方括号将其转义。删除case
语句中的别名
CASE WHEN dbo.Futuredial_Validation.[Error Code]='1' THEN
dbo.Futuredial_Validation.LocalTime END AS [att.Date_cleared]
如果确实需要,也可以添加括号。添加不需要的括号会使查询和条件变得笨拙
另一个改进是在表中使用别名Futuredial\u Validation F
查询将是这样的
Select CASE WHEN F.[Error Code]='1' THEN F.LocalTime END AS [att.Date_cleared]
From dbo.Futuredial_Validation F
如注释中所述,最好避免在别名中使用
,否则必须使用方括号来转义它。OP-这里的一个补充是,您为别名使用了一个奇怪的名称。为什么使用att。?这将迫使您在别名周围添加[]。因此,它将是[在日期前清除]。删除前缀会让你的生活更轻松。@SeanLange-没有注意到这一点。感谢您没有问题@Prdp。我想可能是OP混淆了,这是一个已经存在的表别名,当然会产生更奇怪的错误。:)谢谢你,我有点听从你的建议,现在这个问题已经解决了,我还有一个问题@然后问一个新问题。如果此答案有助于您,请选择此答案左侧的勾号,将其标记为答案-这里的一个补充是,您为别名指定了一个奇怪的名称。为什么使用att。?这将迫使您在别名周围添加[]。因此,它将是[在日期前清除]。删除前缀会让你的生活更轻松。@SeanLange-没有注意到这一点。感谢您没有问题@Prdp。我想可能是OP混淆了,这是一个已经存在的表别名,当然会产生更奇怪的错误。:)谢谢你,我有点听从你的建议,现在这个问题已经解决了,我还有一个问题@然后问一个新问题。如果此答案对您有帮助,请选择此答案左侧的勾号,将其标记为答案