gpt4 book ai didi

MySQL 连接出现空值

转载 作者:行者123 更新时间:2023-11-29 18:48:07 25 4
gpt4 key购买 nike

我正在从 3 个表中获取数据并将它们连接起来(我将缩短提供给相关部分的信息)

表格条目

date / id / ...
5/1/2017 / 1
5/2/2017 / 2
5/3/2017 / 3
.
.
.
6/1/2017 / 42

表 engdailydata

entry_id / enginehrs / ...
1 / 654186
2 / 655000
3 / 660000
.
.
.
42 / 800000

表 24 小时日志

date / air1 / ..
6/1/2017 / 4200

我正在尝试从中获取一个列表,其中包含条目或 24 小时日志表中的所有日期

SQL 可以显示除日期之外的所有值(如果其中一个值缺少日期,我将得到空值)

SELECT 
`entry`.`date` AS `date1`,
`24hrlog`.`date` AS `date2`,
engdailydata`.`enginehrs1` AS `enginehrs1`,
`24hrlog`.`air1` AS `air1`
FROM
(`engdailydata`
LEFT JOIN (`24hrlog`
JOIN `entry` ON ((`entry`.`date` = `24hrlog`.`date`))) ON
((`entry`.`entry_id` = `engdailydata`.`entry_id`)))

例如运行此命令,我返回 40 行。

date1 / date2 / enginehrs1 / air1
NULL / NULL / 654186 / NULL
NULL / NULL / 655000 / NULL
NULL / NULL / 660000 / NULL
.
.
.
6/1/2017 / 6/1/2017 / 800000 / 4200

我想要得到什么

date1 / date2 / enginehrs1 / air1
5/1/2017 / NULL / 654186 / NULL
5/2/2017 / NULL / 655000 / NULL
5/3/2017 / NULL / 660000 / NULL
.
.
.
6/1/2017 / 6/1/2017 / 800000 / 4200

最佳答案

LEFT JOIN的目的是保留从连接右侧获取的结果集中与 JOIN 不匹配的行。的ON健康)状况。 JOIN 左侧的列在这种情况下,结果为 null。

尝试更改您的 LEFT JOINJOIN ( INNER JOIN 的缩写)。这将抑制结果集中带有空值的行。

关于MySQL 连接出现空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44489434/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com