我想在表格中选择id
列不是特定值的所有内容。但是,是否可以将该特定值设为可选值,并在这种情况下返回所有结果。
似乎case
可能是我想要的,但它对我不起作用。我尝试了什么
WHERE id != ''
或
WHERE id (SELECT CASE WHEN $id IS NULL THEN '')
^^ $id could be, say, 10 or NULL
只是错误的语法。我该如何进行此查询?非常感谢。
答案 0 :(得分:1)
尝试类似:
WHERE (id != v_id OR v_id IS NULL)
如果id != v_id
不为空
v_id
的所有行
如果v_id
为空
答案 1 :(得分:1)
如果您需要任何ID,则将$id
传递为空或null。否则传递真实的身份证。这样做是空的:
where (id = $id or $id = '')
使用null:
where (id = $id or $id is null)