我在一个场景中工作,需要显示列表中不存在id的表中的几个记录。
SELECT * FROM contract
WHERE `id` NOT IN (
CASE
WHEN type = 1 THEN '159,154'
WHEN type = 2 THEN ''
WHEN type = 3 THEN ''
END
)
ORDER BY id DESC
在这里您可以看到,如果contract type=1,那么结果不应该显示表中的159&154条记录。但154号的记录也在不该出现的结果中。
感谢您的帮助!
3条答案
按热度按时间kyxcudwk1#
使用mysql instr()函数,如下所示:
tjvv9vkg2#
如果id是数字,请删除引号,以便可以使用可能的索引。
wb1gzix03#
我认为这会奏效: