php - 左连接两个表,多列

标签 php mysql left-join

我需要左连接两个表:CardealersApplications

我想查看哪些信用卡经销商收到了哪些申请。

每个申请都会转发给三个发卡商,因此我的表结构具有以下 3 列:receiver_1receiver_2receiver_3

接收者列中的 ID 与 cardealer_id 相同。

我的这段代码仅适用于一列:

$res1 = $wpdb->get_results( " SELECT leads.*, cardealers.*
    FROM leads
    LEFT JOIN cardealers ON leads.receiver_1 = cardealers.cardealer_id
    WHERE leads.receiver_1 = cardealers.cardealer_id
    AND cardealers.cardealer_id = '". $cardealer_id ."'" );

$res2 = $wpdb->get_results( " SELECT leads.*, cardealers.*
    FROM leads
    LEFT JOIN cardealers ON leads.receiver_2 = cardealers.cardealer_id
    WHERE leads.receiver_2 = cardealers.cardealer_id
    AND cardealers.cardealer_id = '". $cardealer_id ."'" ); 

$res3 = $wpdb->get_results( " SELECT leads.*, cardealers.*
    FROM leads
    LEFT JOIN cardealers ON leads.receiver_3 = cardealers.cardealer_id
    WHERE leads.receiver_3 = cardealers.cardealer_id
    AND cardealers.cardealer_id = '". $cardealer_id ."'" );

正如你所看到的,我做了 3 个单独的语句,它们都有效。但我想将这些合并成一个声明。

我该怎么做?

最佳答案

只需继续添加表并为其添加别名即可。

SELECT 
   leads.*, cardealers1.*, cardealers2.*, cardealers3* 
FROM leads 
LEFT JOIN cardealers as cardealers1
   ON leads.receiver_1 = cardealers1.cardealer_id 
LEFT JOIN cardealers as cardealers2
   ON leads.receiver_2 = cardealers2.cardealer_id
LEFT JOIN cardealers as cardealers3
   ON leads.receiver_3 = cardealers3.cardealer_id
WHERE 
   leads.receiver_1 = cardealers1.cardealer_id 
   AND leads.receiver_2 = cardealers2.cardealer_id 
   AND leads.receiver_3 = cardealers3.cardealer_id 
   AND cardealers.cardealer_id = '". $cardealer_id ."'

编辑:最好为每个卡经销商的列指定一个别名

关于php - 左连接两个表,多列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35681079/

相关文章:

javascript - 使用 PHP/JS 执行操作

php - 我该怎么做才能在我编辑此页面上的单元格时将其保存到数据库的表中?

python - sqlalchemy - 使用 .csv 文件加入 MySQL 表

php - 使用 php/mysql 填充 href 链接

php - LEFT JOIN 后的 ORDER BY 不能在浏览器中工作但在 SQL 中工作

php - 显示过去 7 天 PHP 的结果

php - "Forbidden You don' t 有权访问此资源。”在 Mac Os 的 phpMyAdmin 上

php - 如何使用codeigniter事件记录在mysql db select查询中创建静态字段?

Symfony 查询生成器连接 ON 和 WITH 区别

mysql - 使用sql对tableau多对多关系中的数据进行规范化