Northwind数据库练习及参考答案
--查询订购日期在1996年7月1日至1996年7月15日之间的订单的订购日期、订单ID、客户ID和雇员ID等字段的值
Create View Orderquery
as
Select OrderDate,OrderID,CustomerID,EmployeeID
from Orders
where OrderDate Between '1996-07-01' and '1996-07-15' Select * from Orderquery --查询“Northwind”示例数据库中供应商的ID、公司名称、地区、城市和电话字段的值。条件是“地区等于华北”并且“联系人头衔等于销售代表”。
Select SupplierID,CompanyName,Address,City
from suppliers
where Region='华北' and ContactTitle='销售代表' --查询“Northwind”示例数据库中供应商的ID、公司名称、地区、城市和电话字段的值。其中的一些供应商位于华东或华南地区,另外一些供应商所在的城市是天津
Select SupplierID,CompanyName,Region,City,Phone
from Suppliers
where Region in ('东北','华南')
or City='天津' --查询“Northwind”示例数据库中位于“华东”或“华南”地区的供应商的ID、公司名称、地区、城市和电话字段的值
Select SupplierID,CompanyName,Region,City,Phone
from Suppliers
where Region in ('东北','华南')
多表查询 -- 查询订购日期在1996年7月1日至1996年7月15日之间的订单的订购日期、订单ID、相应订单的客户公司名称、负责订单的雇员的姓氏和名字等字段的 值,并将查询结果按雇员的“姓氏”和“名字”字段的升序排列,“姓氏”和“名字”值相同的记录按“订单 ID”的降序排列
Create procedure orderquery2
@StartOrderDate datetime='1998-01-02 00:00:00.000',
@EndOrderDate datetime='1998-01-31 23:59:59.997'
with encryption
as
Select Orders.OrderDate,Orders.OrderID,Customers.CompanyName,Employees.LastName,Employees.FirstName
from Orders join Customers
on Customers.CustomerID=Orders.CustomerID
join Employees
on Employees.EmployeeID=Orders.EmployeeID
Where OrderDate between @StartOrderDate and @EndOrderDate or OrderDate between '1998-01-01 00:00:00.000' and '1998-01-31 23:59:59.997'
Order By LastName,FirstName ASC,OrderID DESC execute orderquery2 '1996-07-01 00:00:00.000','1996-07-15 23:59:59.999' --查询“10248”和“10254”号订单的订单ID、运货商的公司名称、订单上所订购的产品的名称
Create view orderquery3
as
Select Orders.OrderID,Shippers.CompanyName,ProductName
From Orders join Shippers
on Shippers.ShipperID=Orders.ShipVia
join [Order Details]
on [Order Details].OrderID=Orders.OrderID
join Products
on Products.ProductID=[Order Details].ProductID Select * from orderquery3
where OrderID =10248 or OrderID=10254 --查询“10248”和“10254”号订单的订单ID、订单上所订购的产品的名称、数量、单价和折扣
Create view orderquery4
as
Select Orders.OrderID,ProductName,quantity,Products.unitprice
From [Order Details] join Orders
on [Order Details].orderid=Orders.orderid
join Products
on Products.ProductID=[Order Details].ProductID Select * from orderquery3
where OrderID =10248 or OrderID=10254 --查询“10248”和“10254”号订单的订单ID、订单上所订购的产品的名称及其销售金额
Create view orderquery5
as
Select Orders.OrderID,ProductName,Products.unitprice*quantity as '销售金额'
From [Order Details] join Orders
on [Order Details].orderid=Orders.orderid
join Products
on Products.ProductID=[Order Details].ProductID Select * from orderquery5
where OrderID =10248 or OrderID=10254
综合查询 --查询所有运货商的公司名称和电话
select companyname,phone
from Shippers --查询所有客户的公司名称、电话、传真、地址、联系人姓名和联系人头衔
select companyname,fax,phone,address,contactname,contacttitle
from customers --查询单价介于10至30元的所有产品的产品ID、产品名称和库存量
select productid,productname,unitsinstock
from products
where unitprice between 10 and 30 --查询单价大于20元的所有产品的产品名称、单价以及供应商的公司名称、电话
select productname,unitprice,suppliers.companyname,suppliers.phone
from suppliers join products
on suppliers.supplierid=products.supplierid
where unitprice>20 --查询上海和北京的客户在1996年订购的所有订单的订单ID、所订购的产品名称和数量
select orders.orderid,productname,quantity,city
from [order details] join products
on [order details].productid=products.productid
join orders
on [order details].orderid=orders.orderid
join customers
on orders.customerid=customers.customerid
where city in('北京' ,'上海')
and
OrderDate between '1996-00-00 00:00:00' and '1996-12-31 23:59:59.999' --查询华北客户的每份订单的订单ID、产品名称和销售金额
select orders.orderid,productname,[order details].unitprice*quantity as 销售金额
from [order details] join products
on [order details].productid=products.productid
join orders
on [order details].orderid=orders.orderid
join customers
on orders.customerid=customers.customerid
where region='华北' --按运货商公司名称,统计1997年由各个运货商承运的订单的总数量
select companyname,count(*)
from shippers join orders
on shippers.shipperid=orders.shipvia
where year(orderdate)=1997
group by companyname --统计1997年上半年的每份订单上所订购的产品的总数量
select orders.orderid,sum(quantity)
from [order details] join orders
on [order details].orderid=orders.orderid
where year(orderdate)=1997 and month(orderdate)>=1
and month(orderdate)<=6
group by orders.orderid --select * from [order details] join orders
on [order details].orderid=orders.orderid
where orders.orderid=10400 and year(orderdate)=1997 --统计各类产品的平均价格
select categories.categoryname,avg(unitprice)
from products join categories
on products.categoryid=categories.categoryid
group by categories.categoryname --统计各地区客户的总数量
select count(*)
from customers
where region is not null
group by region
Northwind数据库练习及参考答案的更多相关文章
- 另一套Oracle SQL练习题,更新参考答案
题干: create table student( sno ) primary key, sname ), sage ), ssex ) ); create table teacher( tno ) ...
- s15day12作业:MySQL练习题参考答案
MySQL练习题参考答案 导出现有数据库数据: mysqldump -u用户名 -p密码 数据库名称 >导出文件路径 # 结构+数据 mysqldump -u用户名 -p ...
- 史上最全Java面试题整理(附参考答案)
下列面试题都是在网上收集的,本人抱着学习的态度找了下参考答案,有不足的地方还请指正,更多精彩内容可以关注我的微信公众号:Java团长 1.面向对象的特征有哪些方面? 抽象:将同类对象的共同特征提取出来 ...
- SQL Server 数据库对象命名参考
一. 引言 编码规范是一个优秀程序员的必备素质,然而,有很多人非常注重程序中变量.方法.类的命名,却忽视了同样重要的数据库对象命名.这篇文章结合许多技术文章和资料,以及我自己的开发经验,对数据库对象的 ...
- 非常全的linux面试笔试题及参考答案
一.填空题: 1. 在Linux系统中,以 文件 方式访问设备 . 2. Linux内核引导时,从文件/etc/fstab 中读取要加载的文件系统. 3. Linux文件系统中每个文件用 i节点来标识 ...
- 17道APP测试面试题分享带参考答案
一.Android四大组件 Android四大基本组件:Activity.BroadcastReceiver广播接收器.ContentProvider内容提供者.Service服务. Activity ...
- Linux经典100题及参考答案
转至:https://blog.csdn.net/yaoqiang2011/article/details/11908189 一.单选题 1. cron 后台常驻程序 (daemon) 用于: A. ...
- MySQL练习题参考答案
MySQL练习题参考答案 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 思路: 获取所有有生物课程的人(学号,成绩) - 临时表 获取所有有物理课程的人(学号,成绩) - 临时表 根据[ ...
- NorthWind 数据库整体关系
http://blog.csdn.net/bergn/article/details/1502150 今天看到一张非常有用的图,说明有关Northwind数据库整体关系的图,以前一直在用,但是没有一个 ...
随机推荐
- gedit embeded terminal 设置字体 颜色
/usr/lib/gedit/plugins/terminal.py # -*- coding: utf8 -*- # terminal.py - Embeded VTE terminal for g ...
- 在react/redux中使用Immutable
在redux中使用Immutable 1.什么是Immutable? Immutable是一旦创建,就不能被更改的数据. 对Immutable对象的任何修改或添加删除操作都会返回一个新的Immutab ...
- learning makefile static model
- Jmeter对HTTP请求压力测试、并发测试的简单使用方法
对于服务器性能测试这块的经验更是少得可以忽略.迫使不得不让我们去尝试了解测试的知识. 首先我们的需求场景如下: 服务器硬件:(只有一台) 系统:Windows 2003 WebServer:Tomca ...
- ORA-12638: 身份证明检索失败的解决方法
本地oracle客户端用PLSQL Developer连接远程数据库,每次登录都会在很久之后,出现 ORA-12638: 身份证明检索失败,tnsping 表明TNS配置没有问题. 解决方案: D:\ ...
- jq demo 点击选中元素左右移动
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content ...
- python笔记9-字符串操作
1.定义字符串 字符串有下标从0开始,用[]可以来取下标 2.字符串读取 字符串可以使用循环for,每次取一个取出,循环对象的每个元素 3.字符串修改-字符串不可修改 字符串是不可变变量,一旦定义就不 ...
- UVALive - 4223,hdu2962(简单dijkstra)
Trucking Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- 网易2018校招内推编程题-堆棋子-C++实现
链接:https://www.nowcoder.com/questionTerminal/27f3672f17f94a289f3de86b69f8a25b来源:牛客网 [编程题]堆棋子 热度指数:14 ...
- python 前端 html
web 服务本质: 浏览器发出请求--HTTP协议--服务端接收信息----服务端返回响应---服务端把HTML文件发给浏览器--浏览器渲染页面. HTML: 超文本标记语言是一种用于创建网页的标记语 ...