【问题标题】:Join two mysql tables with Where Cluase使用 Where 子句连接两个 mysql 表
【发布时间】:2020-07-08 10:13:12
【问题描述】:

我需要加入 MySQL 表。 但是当我在第二个表上应用 where 子句时,查询没有返回记录。 我想要一个返回第一个表的所有记录并在某些条件下与第二个表数据连接的查询,如果条件在第二个表中找不到记录,那么它会在结果中附加 null。

详情请看附图。

enter image description here

SELECT *
FROM `Table1` 
JOIN `Table2` ON `Table1`.`id1` = `Table2`.`id2`
WHERE `Table2`.`department_id` = 2;

【问题讨论】:

    标签: mysql database


    【解决方案1】:

    使用左连接,并将 where 条件移动到连接条件:

    SELECT *
    FROM Table1 t1
    LEFT JOIN Table2 t2 ON t1.id1 = t2.id2 AND t2.department_id = 2;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-02
      • 2016-04-05
      相关资源
      最近更新 更多