查询:能够执行从表A到表B的查找,并使用基于引用表A中的日期字段和表B中的日期字段的日期条件的聚合函数。
场景:
我有一个汽车表(包含汽车ID、汽车开始日期、汽车结束日期)和一个汽车付款表(包含汽车ID、汽车付款日期、汽车付款金额)。
对于car表中的每辆车,我想使用CAR_ID在car_payments表中进行查找,并使用Car_Payment_DT计算Car_START_DT和Car_END_DT(来自car表)之间的Car_Payment_Amt记录数,从而进行聚合。
我尝试在car_payments表下创建一个COUNT(Car_Payment_Amt)GROUP BY CAR_ID子查询,并基于CAR_ID将其与Car表JOIN以获取结果,但意识到随着数据大小的增加,子查询所需的时间将比预期的要长。
我如何使用SQL来高效地完成这项工作?我做了一个搜索,人们说使用相关查询会有性能瓶颈。还有其他选择吗?
2条答案
按热度按时间7ajki6be1#
只需使用简单的连接
r3i60tvu2#
您可以尝试不分组,如这里:
其样本数据如下:
...结果为