1)查询员工的工资和last_name,对工资进行升序排列
select salary,last_name from s_emp order by salary asc;
2)查询员工的工资和last_name,对last_name进行降序排列
select salary,last_name from s_emp order by salary desc;
3)查询员工的工资和last_name,
先对salary进行降序排列,再对last_name进行升序排列。
select salary,last_name from s_emp order by salary desc,last_name asc;
4)请举例说明空值的排序规则
select commission_pct from s_emp order by commission_pct;
5)查询41号部门员工的信息?
select * from s_emp where dept_id = 41;
6)查询工资大于1000的员工的信息?
select salary from s_emp where salary > 1000;
7)查询工资大于1000小于1500员工的信息,
使用两者方式来做?
select salary from s_emp where salary between 1000 and 1500;
select salary from s_emp where salary >=1000 and salary <=1500;
8)查询41或者42部门员工的信息,
使用两者方式来做?
select dept_id from s_emp where dept_id = 41 or dept_id = 42;
select dept_id from s_emp where dept_id in (41,43);
9)查询commission_pct为null的员工的信息?
select commission_pct from s_emp where commission_pct is null;
10)查询last_name包含n的员工的信息?
select last_name from s_emp where last_name like '%n%';
11)查询last_name包含n或者N的员工的信息?
select last_name from s_emp where last_name like '%n%' or last_name like '%N%';
12)查询last_name第二个字母为g的员工的信息?
select last_name from s_emp where last_name like '_g%';
13)查询last_name最后一个字母为o的员工的信息?
select last_name from s_emp where last_name like '%o';
14)查询last_name以N开头的员工的信息?
select last_name from s_emp where last_name like 'N%';
15)先插入这条数据(注意转义字符)
insert into s_emp(id,last_name)
values(999,'briup');
commit;
然后查询以开头的员工的信息?
select last_name from s_emp where last_name like '\_%'escape'\';
16)找出部门41中所有经理和部门43中的所有办事员的详细资料
经理职称为:Warehouse Manager
办事员的职称为:Stock Clerk
select title from s_emp where (dept_id = 41 and title = 'Warehouse Manager') or (dept_id = 43 and title = 'Stock Clerk');
17)找出部门41中所有经理、部门43中所有办事员,
既不是经理又不是办事员但其薪金>=2000的所有雇员的详细资料
select title from s_emp where (title != 'Warehouse Manager' and title != 'Stock Clerk') and salary >= 2000;
18)找出拥有提成的雇员的不同职称
select distinct title from s_emp where commission_pct is not null;
19)找出不收取佣金或收取的佣金低于10的雇员
当佣金存在null的情况下
select last_name,nvl(commission_pct,0) from s_emp where nvl(commission_pct,0) < 10;
20)显示不带有'S'的雇员姓名
select last_name from s_emp where last_name not like '%S%' ;
21)显示雇员姓名,根据其雇佣日期,将最老的雇员排在最前面
select last_name from s_emp order by start_date asc;
22)显示所有雇员的姓名、工作和薪金,按工作的降序顺序排序,而工作相同时按薪金升序
select last_name,title,salary from s_emp order by title desc,salary asc;
23)查询12个月的年薪大于18000的员工的信息
select last_name,title,salary from s_emp where (salary*12) > 18000;
24)查询13个月的年薪在10000到14000之间的员工信息
select last_name,title,salary from s_emp where (salary*13) between 10000 and 14000 ;
25)查询41号部门工资大于1400的员工信息
select * from s_emp where dept_id = 41 and salary > 1400;
26)查询除41,42号部门12个月的年薪大于17000员工的信息
select * from s_emp where dept_id not in (41,42) and (salary*12) > 17000;
27)查询顾客的姓名,国家,地区区域id,并按姓名降序排序
s_customer
select name,country,region_id from s_customer order by name desc;
28)查询顾客的姓名,国家,并按国家升序排序,所在国家相同的按姓名降序排序。
select name,country,region_id from s_customer order by country asc, name desc;
网友评论