私はSQLを非常に新しくしており、これは私を酷使しています。このクエリで私を助けてくれますか?グループごとに最大値を持つ各行を選択するためのクエリ
Iは、以下の2つのテーブルを有する:
表1:IssueTable
Id | RunId | Value
---
1 | 1 | 10
2 | 1 | 20
3 | 1 | 30
4 | 2 | 40
5 | 2 | 50
6 | 3 | 60
7 | 4 | 70
8 | 5 | 80
9 | 6 | 90
表2:RunTable
RunId | EnvironmentId
---
1 | 1
2 | 3
3 | 1
4 | 2
5 | 4
6 | 2
Iによりグループ化された最大RUNIDを表すIssueTable行を必要としますRunTableのEnvironmentId。私はテーブルから必要となる結果は次のとおりです。
期待される結果:
Id | RunId | Value | EnvironmentId
---
4 | 2 | 40 | 3
5 | 2 | 50 | 3
6 | 3 | 60 | 1
8 | 5 | 80 | 4
9 | 6 | 90 | 2
のでEnvironmentIdあたりRunTableから最新/最高RUNID持つ行のみ。たとえば、EnvironmentIdが "1"の場合、RunTableのEnvironmentId "1"の最新のRunIdが "3"であるため、RunIdが "3"の行だけが必要です。同様に、EnvironementId "2"の最新の実行はRunId "6"でした。
あなたのRDBMSは何を? SQL Server、postgres、oracle? –