質問編集履歴

2

テーブルの前提に補足説明

2023/01/22 06:49

投稿

moonchild
moonchild

スコア1

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 '部下の名前',が逆

2023/01/22 06:28

投稿

moonchild
moonchild

スコア1

test CHANGED
File without changes
test CHANGED
@@ -9,13 +9,13 @@
9
9
  この答えになる理由が知りたい。解き方が理解しやすいヒントや解説をお願いしたい。
10
10
  ### 該当のソースコード
11
11
  答えは下記のソースコードなのですが、
12
- e1が上司の名前、e1部下の名前になる理由がいまいちわからなく、自分で解くと上司と部下どっちをどっちのas名の名前にしていいのかいまいちわかりません。
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 ;