从其他表查询检查状态

时间:2017-12-07 09:18:28

标签: mysql sql

我有以下查询

select * from user_profile 

现在我想在其他表(用户)中添加条件检查用户状态的位置

select * from user_profile,users where users.status!=0

请不要推荐加入我关注旧的联接查询

由于

4 个答案:

答案 0 :(得分:0)

如果您不想使用联接,则必须使用子查询。我想这两个表都有一个像userId

这样的列
select * from user_profile where userId in (select userId from users where status != 0)

答案 1 :(得分:0)

使用sub query

尝试此操作
select * from user_profile where status!=(select status from users where id =? or status=?)

您在id or status

中对subquery进行比较的内容

答案 2 :(得分:0)

假设您有一个关系列(比如说user_id或者可能是profile_id或某些东西 - 不确定,直到您按照要求共享样本数据。)在两个表之间,您可以加入这两个表,像这样过滤行:

select *
from user_profile p
join users u on p.user_id = u.user_id
where u.status != 0;

答案 3 :(得分:0)

如果您想查询查询中两个表的每一列,可以使用:

SELECT * from user_profile, users WHERE user_profile.user_id = users.id AND users.status! = 0

我假设你有一些列(比如user_id - user_profile 和id - 我的例子中的用户)将两个表链接在一起。