第七章 连接查询
一、查询bus数据库。实现如下需求:
- 获取所有非空调车或车牌号、型号和司机姓名、所属路线的线路号、起点站和终点站信息;
SELECT*FROM
line NATURE JOIN
vehicle WHERE type='非空调车'
2.获取公交二公司所有司机信息。要求输出司机市民身份证识别和电话;
SELECT NAME 司机姓名, licenseNo 身份证,
gender 性别, phone 电话,
FROM vehicle V, driver D,line L,
WHERE V.driverID=D.driverID AND
V.lineID=L.lineID
AND company='公交二公司'
3.查询所有非空调车的车牌号、型号、路线号、起点站和终点站;
SELECT NAME 司机姓名, plateNo车牌号, model 型号,
lineNo 线路号, from_station 起点站,
end_station 终点站
FROM vehicle V,driver D, line L,
WHERE V.driverID=D.driverID
AND V.lineID=L.lineID AND type='非空调车'
4.显示所有线路及所配车辆基本信息,并查询车辆所配相关信息,要求输出司机姓名、性别、电话、车牌号型号、路线号、起点站到终点站;
SELECT NAME 司机姓名, licenseNo 身份证, gender 性别,
phone 电话, plateNo车牌号,
model 型号,lineNo 线路号, from_station 起点站,
end_station 终点站
FROM driver D
RIGHT JOIN vehicle V ON D.driverID=V.driverID
RIGHT JOIN line L ON V.lineID=L.lineID
二、查询easyshopping数据库。实现如下需求:
1.收取订单 ID 为 4 的,订购明细信息、要求输出商品名、单价和件数
SELECT goodsName 商品名, unitPrice 单价, quantity件数
FROM order o JOIN ordersdetail od
ON o.ordersID=od.ordersID
JOIN goods g ON od.goodsID=g.goodsID
WHERE o.orderID=4
2.获取客户’王传华’所向订单详细信息,要求显示客户姓名、订单ID、下单日期、商品名、单价和件数。
SELECT o.ordersID '订单 ID' ,orderDate 下单日期,
goodsName 商品名, unitPrice 单价, quantity 件数
FROM customer c JOIN order o ON
c.customerID=o.customerID
JOIN orderdetail od ON
o.orderID=od.ordersID JOIN
goods g ON od.goodsID=g.goodsID
WHERE cName='王传华'
3.使用左肩获取所有客户的基本信息,以及订购信息,要求输出客户姓名、电话、订单ID和、下单时间。
SELECT cName 姓名, orderID '订单 ID',
orderDATE 下单日期
FROM customer c LEFT JOIN orders o ON
c.customerID=o.customerID
4.使用右肩获取所有客户的基本信息,以及订购信息,要求输出客户姓名、电话、订单ID和、下单时间。
SELECT cName 姓名, orderID '订单 ID',
orderDATE 下单日期
FROM orders o RIGHT JOIN customer c ON
c.customerID=o.customerID
错误:没有给代码空格,有时少打一个字,或者把它们混在一起,以及漏掉或者打错标点符号,甚至之前会打的也忘记了,还要老师提醒。