我想知道是否有人可以帮助我解决此语法错误。
SELECT PROVINCE,
CASE PROVINCE
WHEN 'BC' THEN .12
WHEN 'AB' THEN .08
WHEN 'ON' THEN .07
ELSE 0,
AMOUNT
FROM SALES
当我执行上面的SQL时,我收到语法错误:
Msg 102,Level 15 State 1,Line 6
附近的语法不正确
','。
我是SQL的新手,无法解决这个问题。
答案 0 :(得分:8)
你在案件陈述的末尾错过了“END”。
答案 1 :(得分:1)
你错过了case语句的'End',这就是你得到语法错误的原因。如果AMOUNT是Sales表中的一列,那么你应该写为:
SELECT PROVINCE,
CASE PROVINCE
WHEN 'BC' THEN .12
WHEN 'AB' THEN .08
WHEN 'ON' THEN .07
ELSE 0
End as 'NewColumnName',
AMOUNT
FROM SALES;
如果您想将AMOUNT作为案例条件的列名,那么您应该写如下:
SELECT PROVINCE,
CASE PROVINCE
WHEN 'BC' THEN .12
WHEN 'AB' THEN .08
WHEN 'ON' THEN .07
ELSE 0 end as
AMOUNT
FROM SALES;
希望这有帮助!!!