SQL在时间戳上联接两个不同的表

我不知道

不好意思的格式,我会尽量保持清楚:

表A

 |---------------------|------------------|--------------|
 |      col1           |     col2         |   datetime   |
 |---------------------|------------------|--------------|

表B

 |---------------------|------------------|--------------|
 |      col3           |     col4         |   datetime   |
 |---------------------|------------------|--------------|

我正在寻找的输出是这样的

 |---------------------|------------------|--------------|-----------|---------------|
 |      col1           |     col2         |   col3       |   col4    |   datetime    |             
 |---------------------|------------------|--------------|-----------|---------------|

基本上,datetime列应该是键,并且应包含两个表中的所有值(无重复),并且在表中找到的各个值应针对每个时间戳出现(如果没有,则为NULL)

我尝试了FULL OUTER JOIN,但似乎跳过了一些日期时间:

SELECT T1.col1, T1.col2, T2.col3, T2.col4, T1.datetime
FROM T1 FULL OUTER JOIN  T2 on T1.datetime=T2.datetime;

我也尝试了在右联接子查询上的左联接,但是仍然没有运气。

我觉得这应该有一个简单的解决方案。我想念什么吗?

谢谢!

戈登·利诺夫

很有可能不是“跳过”日期时间值。相反,它们显示为NULL您可以使用以下方法解决此问题coalesce()

SELECT T1.col1, T1.col2, T2.col3, T2.col4,
       COALESCE(T1.datetime, T2.datetime) as datetime
FROM T1 FULL OUTER JOIN
     T2 
     ON T1.datetime = T2.datetime;

大多数FULL JOIN支持的数据库也支持standardUSING子句,因此您也可以将其表示为:

SELECT T1.col1, T1.col2, T2.col3, T2.col4,
       datetime
FROM T1 FULL OUTER JOIN
     T2 
     USING (datetime);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Codeigniter SQL查询在两个不同的列上联接

来自分类Dev

在SQL Server上联接两个表

来自分类Dev

在SQL Server上联接两个表

来自分类Dev

在不同数据库服务器上联接两个表

来自分类Dev

在具有相同主键但数据不同的两个表上联接

来自分类Dev

MySQL在多个记录上联接两个表

来自分类Dev

在匹配的ID上联接两个表?

来自分类Dev

在前缀和非前缀字段上联接两个表的SQL查询

来自分类Dev

SQL查询以合并两个具有不同时间戳的表作为索引

来自分类Dev

SQL查询以合并两个具有不同时间戳的表作为索引

来自分类Dev

在两个条件“无法在重复字段上分区”上联接两个表

来自分类Dev

如何在CakePHP 3的多个列上联接两个表?

来自分类Dev

列数未知时如何在多列上联接两个表(pyspark)

来自分类Dev

Rails查询-如何在特定列上联接两个表

来自分类Dev

在多列上联接两个表,没有重复的行

来自分类Dev

访问-在两个字段上联接两个表,从表A中获取所有记录

来自分类Dev

SQL查询,联接两个表

来自分类Dev

SQL查询,联接两个表

来自分类Dev

Spark SQL在使用Java创建的两个RDD上联接

来自分类Dev

如何在两个字段上联接表并从两个匹配结果中检索单个列?

来自分类Dev

SQL-根据两个不同的时间线合并两个表

来自分类Dev

在两列上联接表

来自分类Dev

在两列上联接表

来自分类Dev

SQL在具有不同格式的两列上联接

来自分类Dev

需要在不同列上联接3个表

来自分类Dev

两个不同的表与一个主表联接

来自分类Dev

MySQL查询两个表和最大时间戳

来自分类Dev

具有不同行的两个表联接网格

来自分类Dev

来自两个不同实体的实体框架联接表

Related 相关文章

热门标签

归档