関連しているとは思わなかった複雑なレイヤーを1つ見逃しましたが、MIN() の提案がこれで機能しないように見えるためです。
次のようなテーブルがあります。
col-1 | col-b | col-c | col-d
----------------------------------
mhm1 | a | 09:20 | 2013-09-21
mhm1 | b | 09:21 | 2013-09-20
mhm1 | c | 09:22 | 2013-09-19
mhm1 | c | 09:23 | 2013-09-18
mhm1 | d | 09:24 | 2013-09-19
mhm2 | a | 09:25 | 2013-09-21
mhm2 | c | 09:26 | 2013-09-20
mhm2 | d | 09:27 | 2013-09-19
mhm2 | c | 09:28 | 2013-09-18
col-b = 'c' である一意の col-1 ごとに最初の行を返すクエリが必要です。
例えば
col-1 | col-b | col-c | col-d
---------------------------------
mhm1 | c | 09:23 | 2013-09-18
mhm2 | c | 09:28 | 2013-09-18
これを達成するための適切な SQL-Request は何でしょうか? 私が試してみました:
SELECT col-a, col-b, min(col-c), min(col-d) FROM MY TABLE
WHERE col-b = 'c'
GROUP BY col-a
ORDER BY col-c ASC
しかし、私は得る:
col-1 | col-b | col-c | col-d
---------------------------------
mhm1 | c | 09:22 | 2013-09-18
mhm2 | c | 09:26 | 2013-09-18
これは私が望むものではありません。
ありがとう