Mysql查询JOIN查询,获取相同的列比较id与request1和request2

标签 mysql inner-join

select pr.REQUEST_ID, pr.REQUESTER_ID, pr.REQUEST_SUBJECT, pr.REQUEST_TO, pr.DOMAIN_ID,pr.SUB_DOMAIN_ID, do.domain_name, sd.sub_domain_name, ud.user_first_name, d.user_last_name 
from professional_requests as pr 
  INNER JOIN domain as do 
    ON do.domain_id=pr.DOMAIN_ID 
  INNER JOIN subdomain as sd 
    ON sd.sub_domain_id=pr.SUB_DOMAIN_ID 
  INNER JOIN user_details as ud 
    ON ud.user_id = pr.REQUEST_TO 
       ud.user_id = pr.REQUESTER_ID 
where pr.IS_ACTIVE='1' 
limit 0, 10

user_details.user_id = professional_requests.REQUEST_TO<相比,我需要从表user_details中取出user_first_nameuser_last_name两次user_details.user_id = professional_requests.REQUESTER_ID

问题是我只能得到 REQUEST_TOuser_first_name, user_last_name,我不能得到 REQUESTER_ID

最佳答案

您还需要加入 user_details 表:

SELECT pr.REQUEST_ID, pr.REQUESTER_ID, pr.REQUEST_SUBJECT, pr.REQUEST_TO, pr.DOMAIN_ID,pr.SUB_DOMAIN_ID, do.domain_name, sd.sub_domain_name
     , ud1.user_first_name  AS request_TO_first_name
     , ud1.user_last_name   AS request_TO_last_name
     , ud2.user_first_name  AS requester_ID_first_name
     , ud2.user_last_name   AS requester_ID_last_name
FROM professional_requests AS pr 
  INNER JOIN domain AS do 
    ON do.domain_id=pr.DOMAIN_ID 
  INNER JOIN subdomain AS sd 
    ON sd.sub_domain_id=pr.SUB_DOMAIN_ID 
  INNER JOIN user_details AS ud1 
    ON ud1.user_id = pr.REQUEST_TO 
  INNER JOIN user_details AS ud2 
    ON ud2.user_id = pr.REQUESTER_ID 
WHERE pr.IS_ACTIVE='1' 
LIMIT 0, 10

关于Mysql查询JOIN查询,获取相同的列比较id与request1和request2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9192196/

相关文章:

mysql - SQL {setCharset} AUTO_INCRMENT=1' 在第 1 行

mysql内连接查询运行缓慢

php - mysql连接3个表并计数

mysql - 如何删除未知号码的最后一条记录(有条件)?

PHP PDO MySQL 事务代码结构

mysql - 有没有办法在mysql中运行异常代码

mysql内部从多个表多次连接同一个表和同一列

mysql - 不使用任何主键时如何连接两个表?

MySQL 使用子查询、内连接和 order by 会产生奇怪的结果

php - 通过php函数从mysql获取结果的问题