我在SQL中使用CASE语句,我试图在THEN语句中使用<>
。
但是当我在THEN语句中使用<>
时,我收到了一个错误
这是我的SQL代码,
DECLARE @VAR CHAR(50) = 'SAMPLE'
SELECT * FROM [DB]
WHERE acct LIKE CASE WHEN @VAR = 'SAMPLE' THEN '88%' WHEN @VAR = 'SAMPLE2' THEN <> '88%' ELSE '%' END
我该如何解决这个问题?
答案 0 :(得分:1)
let bimage = UIImage(named: "play_select.jpg")
button.setImage(bimage, for: .selected)
button.setImage(bimage, for: .highlighted)
答案 1 :(得分:1)
我将其改为:
SELECT *
FROM [DB]
WHERE
(@VAR = 'SAMPLE' AND acct LIKE '88%') OR
(@VAR = 'SAMPLE2' AND acct NOT LIKE '88%') OR
(@VAR NOT IN ('SAMPLE', 'SAMPLE2'))
请注意WHERE
子句中与原始WHERE acct LIKE '%'
表达式的CASE
else条件对应的第三个条件。也就是说,如果@VAR
不是SAMPLE
或SAMPLE2
,那么仅此一项就会匹配一条记录。