SQL查询帮助 - 循环数据查询

时间:2017-07-06 12:26:37

标签: sqlite

我有两张桌子。配置和数据。配置表有信息来定义我所说的"预定义点"。列是configId,machineId,iotype,ioid,subfield和predeftype。我有一个第二个表,其中包含configId链接的配置表中所有项目的所有数据。数据表包含configId,timestamp,value。

我试图从配置表中返回每一行,结果中有2个新列,这是此特定预定义点的最小时间戳和此特定预定义点的最大时间戳。

伪代码将是

select a.*, min(b.timestamp), max(b.timestamp) from TrendConfig a join TrendData b on a.configId = b.configId where configId = (select configId from TrendConfig)

子查询将返回多个值。

Table structure image

知道如何制定这个吗?

2 个答案:

答案 0 :(得分:0)

尝试内部联接:

选择a。*,b.min(时间戳),b.max(时间戳) 来自配置a 内连接数据b 在a.configId = b.configID

答案 1 :(得分:0)

我能够使用Why can't you mix Aggregate values and Non-Aggregate values in a single SELECT?

找到答案

解决方案确实是GROUP BY作为上面提到的CL。

从TrendConfig中选择a。*,min(b.timestamp),max(b.timestamp)a.configId上的a.configId = b.configId组中的连接TrendData b