这是SQL今日一题的第13篇文章
题目描述
查找employees表所有emp_no为奇数,且last_name不为Mary(注意大小写)的员工信息,并按照hire_date逆序排列(题目不能使用mod函数)
这题用到employees表
employees表
方法
select * from employees
where emp_no % 2 =1 and last_name <> 'Mary'
order by hire_date desc
1、奇数,那就是除以2,余数为1即为奇数,余数为0则为偶数,那么用来判断奇偶的方法就是取余,取余用emp_no % 2来表示,where子句筛选出余数为1的
2、last_name不为Mary的,就用不等于表示即可,注意Mary大小写以及字符需用引号:last_name <> 'Mary',不等于还可以写成last_name != 'Mary' 或者 last_name is not 'Mary'
3、最后,在按hire_date降序排列。
知识点
取余
- % 可以用来取余
- mod函数也可以取余
不等于
- <></