首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sql根据两列或多列的条件选择多行

sql根据两列或多列的条件选择多行
EN

Stack Overflow用户
提问于 2018-07-06 04:50:22
回答 1查看 48关注 0票数 2

我正在尝试选择基于3列匹配特定条件的多个行。对于单个搜索,我执行以下操作:

代码语言:javascript
复制
SELECT user_id 
FROM users_to_users 
WHERE user_id = '1' AND contact_user_id = '9' AND contact_blocked = 1

我想提交一组值来返回多行。

所以我的价值观是:

('1','9',1),('2,'9',1),('3','9',1)等...

并为匹配的行返回user_id。本质上,我试图查看哪些用户已经阻止了用户'9‘,这样我就可以只将未被阻止的用户添加到下一条语句中。

由于我对SQL非常不熟悉,所以我认为可能会用到以下几点:

代码语言:javascript
复制
SELECT user_id
FROM users_to_users
WHERE (user_id, contact_user_id, contact_blocked) VALUES (...)

但无法做到这一点。有没有办法根据多列的匹配条件来选择多行?

EN

回答 1

Stack Overflow用户

发布于 2018-07-06 04:52:27

您是否正在尝试将元组与in结合使用?如果是这样的话,这是可行的:

代码语言:javascript
复制
SELECT user_id 
FROM users_to_users 
WHERE (user_id, contact_user_id, contact_blocked) in ( (1, 9, 1), (2, 9, 1), (3, 9, 1) )

然而,可能还有其他方法来实现你的最终目标。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51199697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档