回答編集履歴

1

SQLが誤っていたので修正

2021/04/06 16:16

投稿

neko_the_shadow
neko_the_shadow

スコア2374

test CHANGED
@@ -8,9 +8,9 @@
8
8
 
9
9
  employee_id,
10
10
 
11
- MAX(CASE WHEN RANK = 1 THEN role_id END) AS role1,
11
+ MAX(CASE WHEN rnk = 1 THEN role_id END) AS role1,
12
12
 
13
- MAX(CASE WHEN RANK = 2 THEN role_id END) AS role2
13
+ MAX(CASE WHEN rnk = 2 THEN role_id END) AS role2
14
14
 
15
15
  FROM (
16
16
 
@@ -18,7 +18,7 @@
18
18
 
19
19
  *,
20
20
 
21
- RANK() OVER (PARTITION BY employee_id ORDER BY role_id) AS rank
21
+ ROW_NUMBER() OVER (PARTITION BY employee_id ORDER BY role_id) AS rnk
22
22
 
23
23
  FROM employee
24
24