Mysql用多个where子句连接2个表

标签 mysql

正在报道我最近的帖子 fetch results using join Mysql

我做了一些尝试。我想要什么

TABLE users
USERID     NAMES     EMAIL 
1          KAT       1@1.com
2          JOHN      2@1.com
3          FIK       3@1.com
4          PET       4@1.com
5          COW       5@1.com


TABLE comunity
COMUNITY_ID  USERID                       FANS
1            1 KAT  #FROM TABLE USERS     3@1.com # FIK IS MY FAN
2            2 JOHN #FROM TABLE USERS     1@1.com # AM FAN OF JOHN
3            1 KAT  #FROM TABLE USERS     5@1.com # COW IS MY FAN
4            4 PET  #FROM TABLE USERS     1@1.com # AM FAN OF PET
5            1 KAT  #FROM TABLE USERS     2@1.com # JOHN IS MY FAN 

我想获取所有在粉丝栏中有我的电子邮件的粉丝 我得到它们是这样的 - 这有效

SELECT * FROM  
users u 
INNER JOIN comunity c ON u.USERID = c.USERID
WHERE c.FANS = 'MY USERID - 1' 

现在问题来了

我还想获得通过电子邮件发送给粉丝专栏的用户 我是这样做的 选择我的 userid = '1' 的粉丝

所以我需要一些修正

SELECT * FROM  
users u 
INNER JOIN comunity c ON u.USERID = c.USERID
WHERE c.FANS = 'MY USERID - 1' 
AND * IN(SELECT c.FANS FROM comunity WHERE c.USERID = 'MY USERID - 1");

最佳答案

您可以尝试此查询:

SELECT * from
(
SELECT * from community where USERID=1 OR FANS='1@1.com'
) c
left join
users u
ON u.USERID = c.USERID;

关于Mysql用多个where子句连接2个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52920453/

相关文章:

MySQL select distinct 判断是否只有一个user_id存在

php - 查询与Mysql记录相关并获取其中的一些记录

Mysql 查询三表的内连接

mysql - 远程连接到托管在 AWS 上的 MySQL 数据库

mysql - 带有exress处理中间件外部数据库连接错误的Node.js

php - 通过 PHP 使用 MySQL 数据库表中的值生成 SVG 图形

php - 为空白的调用数据库字段分配默认值

php - 在分数上使用 php 的 explode 函数

php - 选择出现在 MySQL 中 2 个表上的数据

sql查询两次返回相同的值