【问题标题】:How to insert NULL value in MySQL column with no match? [duplicate]如何在不匹配的 MySQL 列中插入 NULL 值? [复制]
【发布时间】:2015-07-09 19:47:10
【问题描述】:

我有以下两张表:

projects_expended:

+---------------+------------+----------+
| project_name  | project_id | Utilised |
+---------------+------------+----------+
| CStreamTax    |          1 |     3500 |
| CStreamTravel |          2 |      149 |
+---------------+------------+----------+

项目:

+------------+---------------------+
| project_id | project_budgetstart |
+------------+---------------------+
|          1 |               15000 |
|          2 |               15000 |
|          3 |                 500 |
+------------+---------------------+

我想制作一个两者的联合表,但使用 Utilized 当项目表中的 project_id 出现时,字段填充 NULL 与 projects_expended 表中的条目之一不匹配。

我的基本尝试如下:

SELECT projects.*, projects_expended.utilised
  FROM projects_expended
  JOIN projects
    ON projects.project_id = projects_expended.project_id;

结果:

+------------+---------------------+----------+
| project_id | project_budgetstart | utilised |
+------------+---------------------+----------+
|          1 |               15000 |     3500 |
|          2 |               15000 |      149 |
+------------+---------------------+----------+

我明白为什么我会得到我得到的结果。但我很坚持这一点。 我做了其他尝试(数不胜数)。

【问题讨论】:

  • 搜索外连接
  • 确实如此。将其标记为这样。

标签: mysql join


【解决方案1】:

我的答案来自:

LEFT JOIN vs. LEFT OUTER JOIN in SQL Server

这很有帮助。

解决办法:

SELECT projects.*, projects_expended.utilised
  FROM projects_expended
 RIGHT JOIN projects
    ON projects.project_id = projects_expended.project_id;

【讨论】:

    【解决方案2】:

    使用左外连接:

    SELECT projects.*, projects_expended.utilised
      FROM projects
      LEFT OUTER JOIN projects_expended
    
        ON projects.project_id = projects_expended.project_id;
    

    【讨论】:

    • 感谢您的回复。但这给了我与正常 JOIN 相同的结果。
    • @PleaseWait 对不起,我的错。查看我的更新答案
    • 啊,那行得通。谢谢@Jens。
    猜你喜欢
    • 2016-11-22
    • 2012-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-02
    • 2017-12-21
    • 1970-01-01
    • 2016-12-14
    相关资源
    最近更新 更多