一下mysql的语句正确的是_mysql语句积累(正确的sql语句是业务成功的一半)

SQL语句的书写顺序:

select...

from...

where...

group by...

order by...

...

SQL语句的执行顺序:

from... -- 确定要查询的是哪张表 (定义表别名)

where... -- 从整张表的数据中进行筛选过滤

select... -- 确定要显示哪些列 (定义列别名)

group by... -- 根据指定的列进行分组

order by... -- 根据指定的列进行排序

emp{#id,#name,#dept_id,#sal,#job,#bonus}   //员工表

dept{#id,#name}                                                //部门表

1,列出薪资比'A'部门(已知部门编号为10)所有员工薪资都高的员工信息,显示员工姓名、薪资和部门名称。

select emp.name, sal, dept.name

from emp left join dept

on emp.dept_id=dept.id

where sal>(select max(sal) from emp where dept_id=30);

2,列出所有员工及其直接上级,显示员工姓名、上级编号,上级姓名

select e1.name, e2.id, e2.name

from emp e1, emp e2

where e1.topid=e2.id;

3,列出在'A部门'任职的员工,假定不知道'A部门'的部门编号, 显示部门名称,员工名称。

select dept.name, emp1.name

from emp,dept

where emp.dept_id=dept.id

and dept.name='A部';

4,对emp表按照部门进行分组, 求每个部门的最高薪资(不包含奖金),显示部门名称和最高薪资

select max(sal) from emp;

select dept, max(sal) from emp

group by dept;

5,查询每个部门的最高薪资,显示对应部门,员工姓名,最高薪资

select emp.dept, name, a.ms from emp,(select dept,max(sal) ms from emp group by dept) a

where emp.dept = a.dept and emp.sal=a.ms;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值