質問編集履歴
2
テーブルの前提に補足説明
test
CHANGED
File without changes
|
test
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
答えのコードがわかるのですが、なぜそうなるのかが解説を見てもわからなくて悩んでいます。
|
4
4
|
よろしくお願いします。
|
5
5
|
|
6
|
+
従業員情報(employees)に主キーのIDと名前の他に、マネージャー役職の人にだけmanager_idがintで振られており、マネージャーでない人のmanager_idはnullになっています。
|
6
7
|
従業員情報(employees)のテーブルをself joinして同じテーブルのマネージャーIDからIDを結合し、上司と部下の氏名を導き出すという問題です。
|
7
8
|
|
8
9
|
### 実現したいこと
|
1
as '部下の名前',が逆
test
CHANGED
File without changes
|
test
CHANGED
@@ -9,13 +9,13 @@
|
|
9
9
|
この答えになる理由が知りたい。解き方が理解しやすいヒントや解説をお願いしたい。
|
10
10
|
### 該当のソースコード
|
11
11
|
答えは下記のソースコードなのですが、
|
12
|
-
e1が
|
12
|
+
e1が部下の名前、e2が上司の名前になる理由がいまいちわからなく、自分で解くと上司と部下どっちをどっちのas名の名前にしていいのかいまいちわかりません。
|
13
13
|
|
14
14
|
|
15
15
|
```ここに言語名を入力
|
16
16
|
select
|
17
|
-
CONCAT(e1.last_name,e1.first_name) as '
|
17
|
+
CONCAT(e1.last_name,e1.first_name) as '部下の名前',
|
18
|
-
CONCAT(e2.last_name,e2.first_name) as '
|
18
|
+
CONCAT(e2.last_name,e2.first_name) as '上司の名前'
|
19
19
|
from employees e1
|
20
20
|
inner join employees e2
|
21
21
|
on e1.manager_id = e2.id ;
|