假设我想从数据库 Sarah Connor
和 Kyle Reese
中获取两个用户。如何使用 的名字和第二名 做到这一点?
select *
from users
where
first_name in ('Sarah', 'Kyle') and
last_name in ('Connor', 'Reese')
但是,这个查询是错误的,因为它也会获取
Sarah Reese
。如何解决?而且,查询在 性能 方面也应该是有效的。 最佳答案
在 MySQL 中你可以使用这个:
select *
from users
where
(first_name, last_name) in (('Sarah', 'Connor'), ('Kyle', 'Reese'))
否则你可以使用:
select *
from users
where
(first_name = 'Sarah' and last_name = 'Connor') or
(first_name = 'Kyle' and last_name = 'Reese')
关于sql - 选择两组中的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36693309/