回答編集履歴
1
LEFT OUTER JOIN ではなくて FULL OUTER JOINを使うほうが一般的なのでそちらに修正しました。
answer
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
|
17
17
|
```sql
|
18
18
|
SELECT
|
19
|
-
|
19
|
+
COALESCE(B.ユーザー名, C.ユーザー名),
|
20
20
|
CASE
|
21
21
|
WHEN B.退室時間 IS NULL OR B.退室時間 < C.退室時間 THEN
|
22
22
|
C.退室時間
|
@@ -29,11 +29,6 @@
|
|
29
29
|
ELSE
|
30
30
|
'テーブルBから取得'
|
31
31
|
END AS 備考
|
32
|
-
FROM
|
32
|
+
FROM B
|
33
|
-
SELECT ユーザー名 FROM B
|
34
|
-
UNION
|
35
|
-
SELECT ユーザー名 FROM C
|
36
|
-
) AS P
|
37
|
-
LEFT OUTER JOIN B ON P.ユーザー名 = B.ユーザー名
|
38
|
-
|
33
|
+
FULL OUTER JOIN C ON B.ユーザー名 = C.ユーザー名
|
39
34
|
```
|