2

これは非常に簡単な質問かもしれませんが、MS Access で解決する方法がわかりません。おそらく以前に回答されているはずですが、見つけることができませんでした。

3 つの列を持つテーブルがあります。col1 はオブジェクト ID、col2 と col3 は測定値です。オブジェクトごとに対応する col2 の最小値を取得するクエリを作成しました。これは、単純なグループ化クエリで問題なく機能します。問題は、col3 (最小値が見つかった行に関連付けられている) をプルしようとすると、適切にグループ化されなくなることです。

私は group-by 句で遊んでいて、いくつかのクエリに分割しようとしましたが、今のところうまくいきません。

私が持っているもの(左)と取得したいもの(右)の例を次に示します。

col1 col2 col3 ---> col1 minC2 col3
---- ---- ---- ---- ---- ----
1 0 1.8 1 0 1.8   
1 1 1.4 2 2 2.5
2 4 1.1 3 1 7.6
2 6 4.7
2 2 2.5
3 4 3.3
3 1 7.6

これが理にかなっていることを願っています。任意のヘルプ/MS Access SQL 構文を歓迎します...ありがとう!

4

2 に答える 2

3

取得したいものの 2 行目が [2 2 2.5] であると仮定すると、これが探しているものです。

select a.col1, a.colm, m.col3
from
    (
        select col1, min(col2) as colm
        from test
        group by col1
    ) as a
inner join test m on a.col1 = m.col1 and a.colm = m.col2
于 2012-06-16T13:49:23.987 に答える
0

サブクエリを使用できます。

select t.col1, tt.col2 , tt.col3
from (
      SELECT col1, Min(col2) AS mcol2
      FROM Tmp
      group by col1) t,  tmp tt
where t.col1 =  tt.col1 and t.mcol2 = tt.col2
于 2012-06-16T13:50:28.553 に答える