如何切换行中的名称?

时间:2017-09-14 22:40:05

标签: mysql sql

这是我的疑问:

select project_number, concat(first_name,' ',last_name) as employee_name, department_name 
from ex.projects p right join employees e 
On e.employee_id = p.employee_id
right join departments d 
on d.department_number = e.department_number

order by department_name 

Here's my output

Wanted Output

如何切换两个人的姓名?需要“辛迪史密斯”在“拉尔夫·西蒙尼亚”和“罗伯特·亚伦森”的最底层“Ralph simonian”

2 个答案:

答案 0 :(得分:0)

根据您的示例,您只需要在订单子句中按降序添加项目编号和员工姓名

order by department_name, project_number, employee_name desc

答案 1 :(得分:0)

我会使用left join而非right join执行此操作。阅读left join更容易:将所有内容保存在第一个表中,然后匹配其余的行。这比阅读更容易。 。 。 “等到你看到最后一张表中的内容,看看行是什么。”

但是离开你的方法,你需要一个order by

select project_number, concat(first_name, ' ', last_name) as employee_name,
       department_name 
from ex.projects p right join
     employees e 
     On e.employee_id = p.employee_id right join
     departments d 
     on d.department_number = e.department_number
order by department_name, last_name;