SQL内部联接在同一表上

时间:2019-10-02 23:22:11

标签: mysql sql

我目前有一个时间戳,站号,温度,湿度,压力的SQL表。 时间戳和station_code是唯一键。 每隔5分钟收集一次数据。

我正在尝试将数据重组为3个表(温度,湿度和压力),这些表对于行将具有唯一的时间戳,对于列将具有唯一的时间戳。

我现在对join语句的执行方式一无所知。

任何帮助将不胜感激。

使用Excel中的数据,

enter image description here

可以轻松生成数据透视表。

enter image description here

最终目的是提取特定的传感器数据进行分析。

1 个答案:

答案 0 :(得分:0)

只要时间戳精确匹配,您就可以加入时间戳和station_code ...

...但是由于MySQL没有真正的FULL外部联接,这意味着您要么必须保证所有3个表始终匹配,要么特定的表始终具有特定顺序的数据(以便向左移动可以使用join)。两者都建议您可能不应该分解原始表。

不太可能为您节省太多空间,因为冗余时间戳和station_code值可能会占用与避免存储NULL测量值所节省的空间一样的空间。