0

次の2つのテーブルがあります。1 つのクエリで、TABLE 2 で見つかった 2 の FEATURE_ID を持つ VEHICLE_ID のみの列 TOTAL_TIME を合計するにはどうすればよいですか?

したがって、私の場合、これらの車両のFEATURE_IDは 2 であるため、クエリの結果は2:00 と 0:30 が加算されるため、2:30 になるはず です。TOTAL_TIME - +--------------------------------        22 | 2:00        25 | 2:30        22 | 1:25        28 | 0:30        …………









表 2
車両 ID | FEATURE_ID -
+--------------------------------
       22 | 2
       22 | 3
       23 | 1
       23 | 3
       25 | 1
       28 | 2
       .........

4

2 に答える 2

2

次のようなものを試すことができます:

SELECT SUM(t1.total_time) FROM table1 as t1 
INNER JOIN table2 as t2 ON t1.vehicle_id = t2.vehicle_id AND t2.feature_id = 2
于 2012-10-10T22:49:39.977 に答える
2

SELECT SUM(TOTAL_TIME) FROM TABLE_1 WHERE VEHICLE_ID IN (SELECT VEHICLE_ID FROM TABLE_2 WHERE FEATURE_ID = 2)

FEATURE_ID = 2 の合計合計時間をお探しですか? または、VEHICLE_ID でグループ化された FEATURE_ID = 2 の合計全体時間を探していますか?? それは次のようになります。

SELECT T1.VEHICLE_ID, SUM(T1.TOTAL_TIME) 
FROM TABLE_1 T1
LEFT JOIN TABLE_2 T2 ON T2.VEHICLE_ID = T1.VEHICLE_ID AND T2.FEATURE_ID = 2
GROUP BY T1.VEHICLE_ID
ORDER BY T1.VEHICLE_ID
于 2012-10-10T22:50:34.327 に答える