-2
考慮表「T1」分組:SQL查詢來選擇「名」以最小的「時間戳」,由「group_fk」
+------------------------------+
| timestamp | name | group_fk |
+------------+------+----------+
| 1362297600 | abc | 41 |
| 1362384000 | bcd | 41 |
| 1362470400 | cde | 41 |
| 1362556800 | def | 42 |
| 1362643200 | efg | 42 |
+------------------------------+
我需要選擇「名」,在每個「最小的「時間戳」 group_fk」。所以結果應該是:「abc」和「def」。
我知道醜陋的(而且並不總是正確的)的方式來做到這一點:
select name
from t1
where t1.timestamp IN (
select min(t1_inner.timestamp)
from t1 t1_inner
group by t1_inner.group_fk
)
有沒有更好的解決辦法?
- DM
「更好」 在何種意義上,到底是什麼? – 2013-03-05 23:50:33
哪些是dbms? – 2013-03-05 23:53:52