我有一个名为Tests
的表和一个表Points
以及许多其他链接的表。
我正在尝试选择“测试”信息的摘要,其中包括来自其他表的数据。到目前为止,一切正常,在Tests
select查询中只有一列连接到值。到目前为止,一切都很好。
但是,这是我在努力的地方:对于每个测试,Points
表中记录了一系列的点,这些点通过典型的外键/主键(PK / FK)链接在一起,从而Test
记录,通常每个Points
中都有数百甚至数千个Test
。
每个Points
的{{1}}从1到n依次编号,因此每个新Test
的{{1}}的编号再次从1开始。
在Points
的摘要选择中,我想查看Test
时Tests
的值,以及Points.Value_X
时具有值Points.Number = 1
的另一列
想法是根据点的订单号1和该测试的最大订单号,从Points.Value_X
表中仅将两个值检索到测试摘要中。
Points.Number = n
是一个十进制数字。
请有人帮我查询一下吗?
谢谢。
答案 0 :(得分:0)
您可以使用条件聚合,如下所示:
bookings_ty
运行查询时,select test_id,
max(case when num = 1 then value_x end) as value_x_1,
max(case when num = <n> then value_x end) as value_x_n
from points p
group by test_id;
的值被假定为常量。