有没有办法在多个依赖子句搜索的情况下执行SQL查询?就像我有一张人类的桌子一样,我想要找回所有(Type = Student and id = 1)
&& (Type = Teacher and id = 44)
。您可以想象,我可以将每个括号扩展为每个括号的多个语句,甚至可以添加第三个,第四个括号来查询更多类型。
表格如下:
Humans
id
type
name
到目前为止,我被迫多次调用相同的查询
select *
from t_humans
where type = a_type and id = an_id
答案 0 :(得分:0)
如果我理解正确,一般的SQL方法是使用更复杂的布尔条件:
select h.*
from t_humans h
where (type = 'Student' and id = 1) or
(type = 'Teacher' and id = 44);
某些数据库允许您通过使用in
:
select h.*
from t_humans h
where (type, id) in (('Student', 1), ('Teacher', 44));