零基础快速自学SQL,1天足矣

发表于 2019-5-25 08:41:16
好东西,先来拿下来再说。学习的走起
发表于 2019-6-4 17:10:36
做完了怎么提交?
发表于 2019-6-4 17:12:37
@传说哥 麻烦你帮我看看对不对
发表于 2019-6-4 20:38:02
很有帮助,谢谢大神指点
发表于 2019-6-6 13:24:28

RE: 零基础快速自学SQL,1天足矣

第一部分 SQL查询语句的学习
习题答案通过SQL查询分析器输出 查询的视图,将查询语句和视图的截图贴在相应习题的下方,回帖http://bbs.fanruan.com/thread-105056-1-1.html提交作业会有奖励。
-- 单表查询
-- 查询订购日期在1996年7月1日至1996年7月15日之间的订单的订购日期、订单ID、客户ID和雇员ID等字段的值
SELECT 订购日期,订单ID,客户ID,雇员ID FROM 订单
WHERE DATE_FORMAT(订购日期, '%Y-%m-%d') >= '1996-07-01'
AND DATE_FORMAT(订购日期, '%Y-%m-%d') <= '1996-07-15';
-- 注:只有大写的Y才返回四位的年份1996,小写y返回两位的年份96
-- 或用between ... and 也可
SELECT 订购日期,订单ID,客户ID,雇员ID FROM 订单
WHERE 订购日期 BETWEEN '1996-07-01' AND '1996-07-15';

编辑于 2019-6-6 13:48  
发表于 2019-6-6 13:33:26
-- 查询供应商的ID、公司名称、地区、城市和电话字段的值。条件是“地区等于华北”并且“联系人头衔等于销售代表”。
select 供应商ID,公司名称,地区,城市,电话 from 供应商
where 地区='华北' and 联系人职务='销售代表';

截图201906061326393354.png
-- 查询供应商的ID、公司名称、地区、城市和电话字段的值。其中的一些供应商位于华东或华南地区,另外一些供应商所在的城市是天津
select 供应商ID,公司名称,地区,城市,电话 from 供应商
where 地区='华北' or 地区='华南' or 城市='天津';

截图201906061328216159.png
-- 查询位于“华东”或“华南”地区的供应商的ID、公司名称、地区、城市和电话字段的值
select 供应商ID,公司名称,地区,城市,电话 from 供应商
where 地区='华东' or 地区='华南';

截图201906061329147913.png

-- 多表查询
-- 查询订购日期在1996年7月1日至1996年7月15日之间的订单的订购日期、订单ID、相应订单的客户公司名称、负责订单的雇员的姓氏和名字等字段的值,并将查询结果按雇员的“姓氏”和“名字”字段的升序排列,“姓氏”和“名字”值相同的记录按“订单 ID”的降序排列
SELECT o.订购日期,o.订单ID,o.客户ID,o.雇员ID,c.公司名称,e.姓氏,e.名字
FROM 订单 O,客户 C, 雇员 E
WHERE o.客户ID=c.客户ID and o.雇员ID=e.雇员ID
and DATE_FORMAT(o.订购日期, '%Y-%m-%d') >= '1996-07-01'
AND DATE_FORMAT(o.订购日期, '%Y-%m-%d') <= '1996-07-15'
ORDER BY e.姓氏,e.名字,o.订单ID DESC;

截图201906061330423934.png

-- 查询“10248”和“10254”号订单的订单ID、运货商的公司名称、订单上所订购的产品的名称
SELECT OD.订单ID,S.公司名称 AS '运货商公司名称',P.产品名称
FROM        订单明细 OD,订单 O,运货商 S,产品 P
WHERE
OD.订单ID=O.订单ID AND OD.产品ID=p.产品ID AND O.运货商=S.运货商ID
AND (OD.订单ID='10248' OR OD.订单ID='10254');

截图201906061331286096.png

-- 查询“10248”和“10254”号订单的订单ID、订单上所订购的产品的名称、数量、单价和折扣
SELECT OD.订单ID,P.产品名称,OD.数量,OD.单价,OD.折扣
FROM        订单明细 OD,产品 P
WHERE OD.产品ID=p.产品ID
AND (OD.订单ID='10248' OR OD.订单ID='10254');

截图201906061332231750.png

-- 查询“10248”和“10254”号订单的订单ID、订单上所订购的产品的名称及其销售金额
SELECT OD.订单ID,P.产品名称,ROUND(OD.单价*OD.数量*(1-OD.折扣),2) AS 销售金额
FROM        订单明细 OD,产品 P
WHERE OD.产品ID=p.产品ID
AND (OD.订单ID='10248' OR OD.订单ID='10254');
发表于 2019-6-6 13:37:34
-- 综合查询
-- 查询所有运货商的公司名称和电话
SELECT 公司名称,电话 from 运货商;

-- 查询所有客户的公司名称、电话、传真、地址、联系人姓名和联系人头衔
SELECT 公司名称,电话,传真,地址,联系人姓名,联系人职务 from 客户;

-- 查询单价介于10至30元的所有产品的产品ID、产品名称和库存量
select 产品ID,产品名称,库存量 from 产品 where 单价 BETWEEN 10 AND 30;

-- 查询单价大于20元的所有产品的产品名称、单价以及供应商的公司名称、电话
select P.产品名称,P.单价,S.公司名称,S.电话 from 产品 P,供应商 S
where P.供应商ID=S.供应商ID and P.单价>=20;


-- 查询上海和北京的客户在1996年订购的所有订单的订单ID、所订购的产品名称和数量
SELECT O.订单ID,P.产品名称,OD.数量
from 订单 O,订单明细 OD,产品 P
where O.订单ID=OD.订单ID AND OD.产品ID=P.产品ID
AND(O.货主城市='上海' or O.货主城市='北京')
AND DATE_FORMAT(订购日期,'%Y')='1996';


-- 查询华北客户的每份订单的订单ID、产品名称和销售金额
SELECT O.订单ID,P.产品名称,ROUND(OD.单价*OD.数量*(1-OD.折扣),2) AS 销售金额
from 订单 O,订单明细 OD,产品 P
where O.订单ID=OD.订单ID AND OD.产品ID=P.产品ID
AND O.货主地区='华北';


-- 按运货商公司名称,统计1997年由各个运货商承运的订单的总数量
select S.公司名称 AS 运货商名称,count(O.订单ID) AS 订单总数量
from 订单 O,运货商 S
WHERE DATE_FORMAT(订购日期,'%Y')='1997' AND S.运货商ID=O.运货商
GROUP BY O.运货商;


-- 统计1997年上半年的每份订单上所订购的产品的总数量
SELECT O.订单ID,SUM(OD.数量) AS 产品总数量
from 订单 O,订单明细 OD
where O.订单ID=OD.订单ID
AND DATE_FORMAT(O.订购日期,'%Y-%m')>='1997-01'
AND DATE_FORMAT(O.订购日期,'%Y-%m')<='1997-06'
GROUP BY O.订单ID;


-- 统计各类产品的平均价格
select C.类别名称,ROUND(AVG(P.单价),2) AS 平均单价
from 产品 P,类别 C
WHERE P.类别ID=C.类别ID
GROUP BY P.类别ID;


-- 统计各地区客户的总数量
select 地区,count(*) from 客户 GROUP BY 地区;
发表于 2019-6-6 13:42:58
综合查询1~5题
发表于 2019-6-6 13:46:08
综合查询6~10题截图
发表于 2019-6-7 09:28:44
去哪验证自己写的SQL对不对,虽然能查出来数据
发表于 2019-6-8 17:44:38
51、57不会做
发表于 2019-6-11 17:53:31
迁移到任务之后图片全挂掉了啊@兔子酱
发表于 2019-6-13 23:22:15
拿到帆软OFFER啦,先自学一波,交个作业
发表于 2019-6-13 23:22:52
拿到帆软OFFER啦,先自学一波,交个作业
发表于 2019-6-13 23:23:15
拿到帆软OFFER啦,先自学一波,交个作业
发表于 2019-6-14 00:30:10
交作业了~
发表于 2019-6-14 23:10:08
每日交作业时刻,第二部分的前10道题
发表于 2019-7-17 13:24:10
木有积分呀 ...
发表于 2019-8-10 15:37:29
豆子好难拿
发表于 2020-2-14 14:01:27
导入test1失败,是什么原因呢?
发表于 2020-8-3 13:01:42
加油加油教育
发表于 2020-8-3 13:16:32
学习学习
发表于 2020-8-14 14:42:21
难搞哦  入门没有系统的教程 直接开始做题还是难弄的
发表于 2020-10-14 16:55:56
顶顶顶顶顶顶顶
发表于 2020-12-11 16:34:58
学习一下
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1326回帖数 45关注人数 143113浏览人数
最后回复于:2022-3-23 19:30

返回顶部 返回列表