2017-07-06 70 views
0

我有两个表。配置和数据。配置表有信息来定义我称之为“预定义点”的内容。列是configId,machineId,iotype,ioid,子字段和predeftype。我有第二个表,其中包含configId链接的配置表中所有项目的所有数据。数据表包含configId,时间戳,值。SQL查询帮助 - 循环查看数据

我想从配置表中返回每行,结果中有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

任何想法如何制定呢?

+0

请告诉我们的表结构,以便可以给出确切的答案。很可能这可以通过连接或相关子查询来完成。 –

+0

听起来就像你在谈论加入 - https://www.w3schools.com/sql/sql_join.asp –

+0

蒂姆,我包括了一个结构的图像。 – Tacitus86

回答

0

尽量内连接:

选择*,b.min(时间戳),b.max(时间戳) 从CONFIG一个 内上a.configId = b.configID

加入数据B 。
+0

它与min(b.timestamp)和max(b.timestamp)一起运行,但只返回单个结果......因为它只获取所有点的最大/最小值,而不是Config表中的每个点。 – Tacitus86