MSSQL データベース内の一連のイベントに関するデータを含むテーブルがあります。
ID Name Date Location Owner
--- --------------------------------------------------------- ----------- -------------------------------- -----------
1 Seminar Name 1 2013-08-08 A Location Name 16
2 Another Event Name 2013-07-30 Another Location 18
3 Event Title 2013-08-21 Head Office 94
4 Another Title 2013-08-30 London Office 18
5 Seminar Name 2 2013-08-27 Town Hall 19
6 Title 2013-08-20 Somewhere Else 196
7 Fake Seminar For Testing 2013-08-25 Fake Location 196
このテーブルには、アプリケーション内の複数のユーザーが所有する多数のイベントが含まれていることがわかります。各ユーザーの最近発生したイベントを選択するために使用できるクエリがあるかどうかを調べようとしています。私が望むものを示す最も簡単な方法は、私が探している理想的な結果テーブルを表示することだと思います (今日の日付に基づく):
ID Name Date Location Owner
--- --------------------------------------------------------- ----------- -------------------------------- -----------
1 Seminar Name 1 2013-08-08 A Location Name 16
2 Another Event Name 2013-07-30 Another Location 18
3 Event Title 2013-08-21 Head Office 94
5 Seminar Name 2 2013-08-27 Town Hall 19
6 Title 2013-08-20 Somewhere Else 196
現時点で思いつくのは、次のクエリです。
SELECT DISTINCT Owner, Date, ID FROM Seminars
GROUP BY Owner, Date, ID ORDER BY Date
それは私がやりたいことを実際に行うわけではなく、今日の日付にも基づいて何らかの方法で選択する必要があるため、実際の解決策はこれよりも少し複雑になると思います。