4

これは私を困惑させました。

私は2つのテーブルを持っています:

METERS
id | startTime

READINGS
id | meter_id | readingTime

私がしたいのは、1つのSQLクエリでmeters.startTime最も低い一致に更新することです。readings.readingTime

どうすればいいですか?

4

2 に答える 2

14

このような:

UPDATE Meters m
INNER JOIN
(
   SELECT meter_id, MIN(reading_time) lowesttime
   FROM readings 
   GROUP BY meter_id
) r ON m.id = r.meter_id
SET m.starttime = r.lowesttime;
于 2012-12-10T10:36:06.383 に答える
2
UPDATE METERS m SET startTime = (SELECT MIN(r.readingTime)
    FROM READINGS r
    WHERE r.meter_id = m.id)
WHERE m.id = your_id
于 2012-12-10T10:36:45.193 に答える