当前位置:A5D软件园网络学院数 据 库DB2 → 网络学院内容

学习DB2数据库必须掌握的五十四条常用语句 (1)

订阅:
减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2008-5-9 10:18:00

select cust_id

from sales

where tot_amt>2000

21、统计表中员工的薪水在4000-6000之间的人数

select count(*)as 人数

from employee

where salary between 4000 and 6000

 

22、查询表中的同一部门的职工的平均工资,但只查询"住址"是"上海市"的员工

select avg(salary) avg_sal,dept

from employee

where addr like '上海市%'

group by dept

 

23、将表中住址为"上海市"的员工住址改为"北京市"

update employee

set addr like '北京市'

where addr like '上海市'

 

24、查找业务部或会计部的女员工的基本信息

select emp_no,emp_name,dept

from employee

where sex='F'and dept in ('业务','会计')

 

25、显示每种产品的销售金额总和,并依销售金额由大到小输出

select prod_id ,sum(qty*unit_price)

from sale_item

group by prod_id

order by sum(qty*unit_price) desc 

 

26、选取编号界于'C0001'和'C0004'的客户编号、客户名称、客户地址

select CUST_ID,cust_name,addr

from customer

where cust_id between 'C0001' AND 'C0004'

 

27、计算出一共销售了几种产品

select count(distinct prod_id) as '共销售产品数'

from sale_item

 

28、将业务部员工的薪水上调3%

update employee

set salary=salary*1.03

where dept='业务'

 

29、由employee表中查找出薪水最低的员工信息

select *

from employee

where salary=

(select min(salary )

from employee )

 

30、使用join查询客户姓名为"客户丙"所购货物的"客户名称","定单金额","定货日期","电话号码"

select a.cust_id,b.tot_amt,b.order_date,a.tel_no

from customer a join sales b

on a.cust_id=b.cust_id and cust_name like '客户丙'

 

31、由sales表中查找出订单金额大于"E0013业务员在1996/10/15这天所接每一张订单的金额"的所有订单

select *

from sales

where tot_amt>all

(select tot_amt

from sales

where sale_id='E0013'and order_date='1996/10/15')

order by tot_amt

32、计算'P0001'产品的平均销售单价

select avg(unit_price)

from sale_item

where prod_id='P0001'

33、找出公司女员工所接的定单

select sale_id,tot_amt

from sales

where sale_id in

(select sale_id from employee

where sex='F')

34、找出同一天进入公司服务的员工

select a.emp_no,a.emp_name,a.date_hired

from employee a

join employee b

on (a.emp_no!=b.emp_no and a.date_hired=b.date_hired)

order by a.date_hired

35、找出目前业绩超过232000元的员工编号和姓名

select emp_no,emp_name

from employee

where emp_no in

(select sale_id

from sales

group by sale_id

having sum(tot_amt)<232000)

36、查询出employee表中所有女职工的平均工资和住址在"上海市"的所有女职工的平均工资

select avg(salary)

from employee

where sex like 'f'

union

select avg(salary)

from employee

where sex like 'f' and addr like '上海市%'

37、在employee表中查询薪水超过员工平均薪水的员工信息

Select *

from employee

where salary>( select avg(salary)

from employee)

38、 找出目前销售业绩超过10000元的业务员编号及销售业绩,并按销售业绩从大到小排序

Select sale_id ,sum(tot_amt)

from sales

group by sale_id

having sum(tot_amt)>10000

order by sum(tot_amt) desc

39、 找出公司男业务员所接且订单金额超过2000元的订单号及订单金额

Select order_no,tot_amt

From sales ,employee

Where sale_id=emp_no and sex='M' and tot_amt>2000 

 

40、 查询sales表中订单金额最高的订单号及订单金额

Select order_no,tot_amt from sales

where tot_amt=(select max(tot_amt) from sales)

 

41、 查询在每张订单中订购金额超过4000元的客户名及其地址

Select cust_name,addr from customer a,sales b

where a.cust_id=b.cust_id and tot_amt>4000

 

42、 求出每位客户的总订购金额,显示出客户号及总订购金额,并按总订购金额降序排列

Select cust_id,sum(tot_amt) from sales

Group by cust_id

Order by sum(tot_amt) desc

 

 

43、 求每位客户订购的每种产品的总数量及平均单价,并按客户号,产品号从小到大排列

Select cust_id,prod_id,sum(qty),sum(qty*unit_price)/sum(qty)

From sales a, sale_item b

Where a.order_no=b.order_no

Group by cust_id,prod_id

Order by cust_id,prod_id

 

44、 查询订购了三种以上产品的订单号

Select order_no

from sale_item

Group by order_no

Having count(*)>3

 

45、 查询订购的产品至少包含了订单3号中所订购产品的订单

Select distinct order_no

From sale_item a

Where order_no<>'3'and not exists (

Select * from sale_item b where order_no ='3' and not exists

(select * from sale_item c where c.order_no=a.order_no and c.prod_id=b.prod_id))

 

46、 在sales表中查找出订单金额大于"E0013业务员在1996/11/10这天所接每一张订单的金额"的所有订单,并显示承接这些订单的业务员和该订单的金额

Select sale_id,tot_amt from sales

where tot_amt>all(select tot_amt

from sales

where sale_id='E0013' and order_date='1996-11-10')

47、 查询末承接业务的员工的信息

Select *

From employee a

Where not exists

(select * from sales b where a.emp_no=b.sale_id)

48、 查询来自上海市的客户的姓名,电话、订单号及订单金额

Select cust_name,tel_no,order_no,tot_amt

From customer a ,sales b

Where a.cust_id=b.cust_id and addr='上海市'

49、 查询每位业务员各个月的业绩,并按业务员编号、月份降序排序

Select sale_id,month(order_date), sum(tot_amt)

from sales

group by sale_id,month(order_date)

order by sale_id,month(order_date) desc

50、 求每种产品的总销售数量及总销售金额,要求显示出产品编号、产品名称,总数量及总金额,并按产品号从小到大排列

Select a.prod_id,prod_name,sum(qty),sum(qty*unit_price)

From sale_item a,product b

Where a.prod_id=b.prod_id

Group by a.prod_id,prod_name

Order by a.prod_id

51、 查询总订购金额超过'C0002'客户的总订购金额的客户号,客户名及其住址

S

上一页  [1] [2] [3]  下一页

赞助商连接