请查看我下面的表格...是否可以构建一个能够1
)计算所有具有 class_id 1 的车辆的 total_time 的总和(无论 feature_id 是什么)
(结果为 6:35)
2)计算总和具有 class_id 1 和 feature_id 2 的所有车辆的总时间
(根据 vehicle_id 22 和 24,结果将是 5:35)
我能够在两个单独的查询中获得结果,但我希望在一个查询中检索它们......类似于:
SELECT
SUM((CASE WHEN (VEHICLE_TABLE.class_id = 1) then LOG_TABLE.total_time else 0 end)) **AS TOTAL_ALL**,
...here goes statement for 2)... AS TOTAL_DIESEL...
FROM LOG_TABLE, VEHICLE_TABLE .....
WHERE VEHICLE_TABLE.vehicle_id = LOG_TABLE.vehicle_id ......
表 1:LOG_TABLE(vehicle_id 不是唯一的)
vehicle_id | 总时间
--------------|--------------
22 2:00
22 0:30
23 1:00
24 2:20
24 0:45
表 2:VEHICLE_TABLE(vehicle_id 是唯一的)
vehicle_id | class_id
--------------|--------------
22 1
23 3
24 1
表 3:VEHICLE_FEATURES_TABLE(vehicle_id 不是唯一的,但 feature_id 是唯一的车辆标识)
车辆标识 | feature_id
--------------|--------------
22 1
22 2
23 1
23 2
23 6
24 2
24 6