如何从该表中选择一行http://i.stack.imgur.com/27cu9.jpg其中“user_1”和“user_2”的值可能看起来像
user_1 user_2
1 2
2 1
换句话说,无论值在哪个字段中,我都想选择一个包含 2 个用户提交=1 的字段。
如何从该表中选择一行http://i.stack.imgur.com/27cu9.jpg其中“user_1”和“user_2”的值可能看起来像
user_1 user_2
1 2
2 1
换句话说,无论值在哪个字段中,我都想选择一个包含 2 个用户提交=1 的字段。
这是一个执行此操作的简单查询:
select *
from t
where submitted = 1 and 2 in (user_1, user_2)
如果我理解了您的问题,我认为JOIN
如果您尝试返回具有相应用户 (1,2) 和 (2,1) 的行,则您需要自行使用该表:
select t1.*
from yourtable t1
join yourtable t2 on
t1.user_1 = t2.user_2 and t1.user_2 = t2.user_1
但是,如果您只是想查看用户 2 是否存在于任一字段中,请查看 Gordon 的帖子。
用这个:-
select * from tblname as t1, tblname as t2 where
t1.user_1 = t2.user_2 and t1.user_2 = t2.user_1 and t1.user_1<>t1.user_2
编辑:-
更新了查询,使具有相同值的行不会出现在结果中。