回答編集履歴

1

追記

2020/01/21 15:01

投稿

sazi
sazi

スコア25173

test CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  where (rev, rev2, rev3) in (
10
10
 
11
- select rev, max(rev2) over(partition by rev), max(rev3) over(partiton by rev, rev2)
11
+ select rev, max(rev2) over(partition by rev), max(rev3) over(partition by rev, rev2)
12
12
 
13
13
  from TableA
14
14
 
@@ -17,3 +17,39 @@
17
17
  )
18
18
 
19
19
  ```
20
+
21
+ 追記
22
+
23
+ --
24
+
25
+ 上記は手打ちだったので確認したらエラーでした。
26
+
27
+ エラー回避する記述が思いつかなかったので、分析関数使用しない別パターンを取り敢えず回答しておきます。
28
+
29
+ ```SQL
30
+
31
+ select *
32
+
33
+ from TableA
34
+
35
+ where (rev, rev2, rev3) in (
36
+
37
+ select rev, rev2, max(rev3)
38
+
39
+ from tablea
40
+
41
+ where (rev, rev2) in (
42
+
43
+ select rev, max(rev2)
44
+
45
+ from TableA
46
+
47
+ group by rev
48
+
49
+ )
50
+
51
+ group by rev, rev2
52
+
53
+ )
54
+
55
+ ```