1 排序操作
表结构如下
查找所有dept_no
,并排序
select dept_no from dept_emp
order by dept_no;
逆序排序
select dept_no from dept_emp
order by dept_no desc;
2 去重操作
表结构同上
查找所有dept_no
,排序并去重
select distinct dept_no from dept_emp
order by dept_no desc;
要注意的是distinct
必须放在前面
3 查询次数
表结构同上
查找所有dept_no
出现次数大于等于2次的行
select count(dept_no) from dept_emp
group by dept_no
having count(dept_no)>=2;
要注意的是,group by dept_no
语句不能省略。
4 多个条件
表结构同上
查找employees
表所有emp_no
为奇数,且last_name
不为Mary
的员工信息,并按照hire_date
逆序排列
select * from employees
where emp_no %2 =1
and last_name != 'Mary'
order by hire_date desc;
要注意的是并列使用的关键词是and
;
如果!=
报错的话,就换成<>
,也是不等于的意思。
5 第几大的查询
表结构如下,求薪水第二多
的员工的emp_no
以及其对应的薪水salary
。
select emp_no, salary from salaries
order by salary desc
# limit 1,1;
limit 1 offset 1;
limit a,b
等价于limit a offset b
,取值范围为[a, a+b)
。