开发者社区> 问答> 正文

根据下面的代码,MySQL如何实现查询要求

DEPARTMENTS表结构如下:
DEPARTMENT_ID(primary key),
DEPARTMENT_NAME,
LOCATION

EMPLOYEES表结构如下:
EMPLOYEE_ID(primary key),
EMPLOYEE_NAME,
EMPLOYEE_JOB,
MANAGER,
SALARY,
DEPARTMENT_ID

根据部门号由高而低,工资有低而高列出每个员工的姓名,部门号,工资
select DEPARTMENT_ID as 部门号,EMPLOYEE_NAME as 姓名,SALARY as 工资 from EMPLOYEES order by DEPARTMENT_ID desc,SALARY asc
求另一种解决方法

展开
收起
落地花开啦 2016-02-13 13:49:38 2075 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    这样的话SQL有两种写法:
    法一

    SELECT e.EMPLOYEE_NAME AS `姓名`, 
            d.DEPARTMENT_NAME AS `部门号`,
            e.SALARY AS `工资`
        FROM DEPARTMENTS AS d, EMPLOYEES AS e
        WHERE e.DEPARTMENT_ID = d.DEPARTMENT_ID 
        ORDER BY d.DEPARTMENT_ID DESC, SALARY ASC

    法二

    SELECT e.EMPLOYEE_NAME AS `姓名`, 
            d.DEPARTMENT_NAME AS `部门号`,
            e.SALARY AS `工资`
        FROM EMPLOYEES AS e
        LEFT JOIN DEPARTMENTS AS d
        ON e.DEPARTMENT_ID = d.DEPARTMENT_ID
        ORDER BY d.DEPARTMENT_ID DESC, SALARY ASC
    2019-07-17 18:41:56
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像