1

ここで問題に直面しています (SQL Server 2005 を使用)。

私のSELECTクエリは次のようになります。

SELECT 
a.str_column1, b.str_column2, c.date_column3, c.guid_column4
FROM table
....
joining the other tables here to get my columns
....
GROUP BY 
    a.str_column1, b.str_column2, c.date_column3, c.guid_column4

これはこのようなものを与えるでしょう

a.str_column1    b.str_column2    c.date_column3    c.guid_column4
------------------------------------------------------------------
a1               b1                15/07/2013       someID    
a2               b2                05/06/2012       someID
a1               b1                07/08/2013       someID
....

今、私はそれが and によってグループ化され、最新のものだけを取得するようにしa.str_column1たいb.str_column2( order by c.dat_column3)

a.str_column1    b.str_column2    c.date_column3    c.guid_column4
------------------------------------------------------------------
a1               b1                07/08/2013       someID
a2               b2                05/06/2012       someID

SQLでこれを達成する方法はありますか?

4

2 に答える 2

1

max以下のように、列に関数を使用date_column3し、group by 句から列を削除する必要があります。

SELECT 
a.str_column1, b.str_column2, max(c.date_column3) as column3, c.guid_column4
FROM table
....
joining the other tables here to get my columns
....
GROUP BY a.str_column1, b.str_column2,c.guid_column4
于 2013-08-07T07:37:18.210 に答える