设备管理数据库 sql 查询
原创
©著作权归作者所有:来自51CTO博客作者suntaost2的原创作品,请联系作者获取转载授权,否则将追究法律责任
下面是一个设备管理数据库,包括四张表。
设备清单表
部门代码表
增值表
问题:
1. 找出价格低于20000元的设备名称、启用日期与部门
Select 名称,启用日期,部门,价格 from 设备清单表;
where 价格<20000
2. 例:查询大修过的设备的编号、名称和部门名
Select 设备大修表.编号,设备清单表.名称,部门代码表.名称 ;
as 部门名 from 设备清单表,设备大修表,部门代码表;
where 设备大修表.编号=设备清单表.编号;
And 部门代码表.代码=设备清单表.部门
3. 将设备清单表的记录按部门升序排列,部门相同时按价格降序排列.
Select * from 设备清单表 order by 部门,价格 desc
4. 求出每一设备的增值金额.
Select 设备清单表.名称,sum(增值表.增值) from 增值表,设备清单表;
Where 设备清单表.编号=增值表.编号 group by 增值表.编号
5. 求出各部门的设备总价
方法一:
Select 部门,sum(价格) from 设备清单表 group by 部门
方法二:
Select 设备清单表.部门,sum(设备清单表.价格),部门代码表.名称;
from 设备清单表,部门代码表;
where 部门代码表.代码=设备清单表.部门;
group by 设备清单表.部门
6. 找出大修费用已超过5000元的设备,并将结果存入数组y
Select 编号 from 设备大修表 group by 编号 ;
Having sum(费用)>5000 Into array y
注意: 在存在group by子句时,设置查询条件应用having子句,而不是where子句.
7. 求出设备总价超过20000元的部门
Select 部门代码表.名称,sum(设备清单表.价格) ;
from 部门代码表,设备清单表 ;
where 部门代码表.代码=设备清单表.部门 ;
group by 设备清单表.部门 having sum(设备清单表.价格) >20000
8. 查找增值设备的编号、名称及每次增值的金额。
方法1
SELECT 设备清单表.编号,设备清单表.名称, 增值表.增值;
FROM 设备清单表 INNER JOIN 增值表;
ON 设备清单表.编号=增值表.编号
或者 SELECT 设备清单表.编号,设备清单表.名称, 增值表.增值;
FROM 增值表 INNER JOIN 设备清单表 ;
ON 设备清单表.编号=增值表.编号
方法 2
SELECT 设备清单表.编号, 设备清单表.名称, 增值表.增值;
FROM 设备清单表,增值表 ;
WHERE 设备清单表.编号=增值表.编号
9. 试汇总设备的大修费用,要求:
(1) 编号头三位小于038
(2) 显示设备名称与大修费用小计
(3) 显示结果按大修费用小计降序排列
方法一:
SELECT 设备清单表.名称,SUM(设备大修表.费用) ;
FROM 设备清单表 INNER JOIN 设备大修表;
ON 设备清单表.编号=设备大修表.编号;
WHERE LEFT(设备大修表.编号,3)<“038” ;
GROUP BY 设备大修表.编号 ORDER BY 2 DESC
方法二:
SELECT 设备清单表.名称,SUM(设备大修表.费用);
FROM 设备清单表,设备大修表 ;
WHERE 设备大修表.编号=设备清单表.编号 AND ;
LEFT(设备清单表.编号,3)<“038” ;
GROUP BY 设备大修表.编号;
ORDER BY 2 DESC
10.查询价格小于10万元的设备的启用日期。
Select 名称,启用日期 from 设备清单表 where 价格<100000
11.查询车间使用的设备或价格不小于10万元的设备的部门名,查询结果按启用日期从小到大排列。
Select 设备清单表.名称, 设备清单表.价格, 设备清单表.启用日期,;
部门代码表.名称 from 设备清单表,部门代码表 ;
Where 设备清单表.部门=部门代码表.代码 ;
and (“车间”$部门代码表.名称 or 设备清单表.价格>=100000);
order by 设备清单表.启用日期
12.查询1990年启用的设备的名称和部门名。
Select 设备清单表.名称,部门代码表.名称, 设备清单表.启用日期;
from 设备清单表,部门代码表;
where 设备清单表.部门=部门代码表.代码 and ;
year(设备清单表.启用日期)=1990
13.查询大修过的设备的编号和名称,查询结果输出到表RESULT.DBF。
Select 设备大修表.编号,设备清单表.名称 ;
From 设备清单表,设备大修表 ;
Where 设备清单表.编号=设备大修表.编号 into dbf result.dbf
14.查询有增值的设备的设备名和部门名。
Select 设备清单表.名称,部门代码表.名称,增值表.增值;
From设备清单表,部门代码表,增值表 ;
Where 设备清单表.部门=部门代码表.代码 and ;
设备清单表.编号=增值表.编号
15.试算出1992年启用的主要设备的台数。
Select count(编号) from 设备清单表 where 主要设备=.t. ;
And year(启用日期)=1992
16.试算出大修过的设备中每种设备大修费用的平均值。
Select 设备清单表.名称,avg(设备大修表.费用) ;
From 设备清单表,设备大修表 ;
Where 设备清单表.编号=设备大修表.编号 ;
group by 设备大修表.编号
17.查询最早启用和最晚启用的设备。
方法一:
Select max(启用日期),min(启用日期) from 设备清单表 ;
Into array x
Select 名称,启用日期 from 设备清单表 ;
Where 启用日期=x(1) or 启用日期=x(2)
方法二:
Select 名称,启用日期 from 设备清单表 ;
where 启用日期=(Select max(启用日期) from 设备清单表) ;
or 启用日期=(Select min(启用日期) from 设备清单表)
注释: 方法二属于嵌套查询.
上一篇:人才信息管理数据库 sql查询
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
华为 华三 不常用设备管理信息命令
设备信息 mac
序列号 设备信息 mac -
单位电脑设备管理系统
单位电脑设备管理系统
职场 管理系统 休闲 单位电脑 -
设备管理系统架构erp 设备管理系统er图设备管理系统架构erp