我正在尝试编写一个SQL查询来识别员工在设备方面的角色,并且出现错误Incorrect syntax near the keyword 'AND'.
,我不确定是否可以使用{{ AND
中的1}}运算符,如果没有,我可以使用其他任何运算符来完成此操作吗?我正在使用的代码如下。
CASE
答案 0 :(得分:0)
我认为您必须使用括号,因为它是对表达式的求值。
这应该有效:
SELECT custodian_id, manager_id, username,
CASE username
WHEN (custodian_id AND manager_id) THEN 'Custodian and manager'
WHEN manager_id THEN 'Manager'
WHEN custodian_id THEN 'Custodian'
ELSE ''
END AS person_role
FROM Install
ORDER BY person_role
编辑:我认为您还应该考虑列的条件,例如检查len是否为0 ...