[英]Nested SQL case statement
您的案例陈述缺少结尾。 但是,它们不必首先嵌套:
(CASE WHEN [sStatus] LIKE '%Notice%' THEN 'Notice'
WHEN [sStatus] LIKE '%Occupied%' THEN 'Occupied'
WHEN [sStatus] LIKE '%Vacant%' THEN 'Vacant'
ELSE [sStatus]
END) as [Status]
而且,如果您只想使用第一个单词,则完全不需要case
:
SUBSTRING(sStatus, CHARINDEX(' ', sStatus + ' '), LEN(sStatus))
您收到此错误是因为您有3个CASE语句和一个END。
但是,根本不需要嵌套这些CASE语句。 您可以简单地做到这一点:
CASE
WHEN [sStatus] LIKE '%Notice%'
THEN 'Notice'
WHEN [sStatus] LIKE '%Occupied%'
THEN 'Occupied'
WHEN [sStatus] LIKE '%Vacant%'
THEN 'Vacant'
ELSE [sStatus]
END as [Status]
CASE WHEN [sStatus] LIKE '%Notice%' THEN 'Notice'
WHEN [sStatus] LIKE '%Occupied%' THEN 'Occupied'
WHEN [sStatus] LIKE '%Vacant%' THEN 'Vacant'
ELSE [sStatus] END as Status
你不需要其他所有的
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.