-- 查询所有运货商的公司名称和电话
SELECT `公司名称`,`电话` from `运货商`
-- 查询所有客户的公司名称、电话、传真、地址、联系人姓名,`联系人职务`
SELECT 公司名称,电话,传真,地址,联系人姓名,联系人职务 from `客户`
-- 查询单价介于10元至30元的所有产品的产品ID,产品名称和库存量
SELECT `产品ID`,`产品名称`,`库存量` ,`单价`from `产品`
WHERE 单价 BETWEEN 10 and 30
-- 查询单价大于20元的所有产品的产品名称、单价以及供应商的公司名称、电话
select 产品.`产品名称`,产品.单价,供应商.`公司名称`,供应商.电话 from 产品,供应商
WHERE 产品.单价>20
and 产品.`供应商ID`=供应商.`供应商ID`
-- 查询上海和北京的客户在1996年订购的所有订单的订单ID,所订购的产品名称和数量
SELECT 客户.城市,订单.订购日期,订单.订单ID,产品.`产品ID`,产品.`产品名称`,订单明细.数量
FROM 订单,产品,订单明细,客户
WHERE 客户.`城市` in ("上海","北京") and year (订单.`订购日期`)=1996
and 订单.订单ID=订单明细.订单ID
and 产品.产品ID=订单明细.产品ID
and 客户.客户ID=订单.客户ID
-- 查询华北客户的每份订单的订单ID,产品名称和销售金额
SELECT 地区,产品名称,客户.客户ID,订单.订单ID,产品.产品ID,round(订单明细.单价*(1-折扣)*数量,2) as 销售金额
from 客户,订单,产品,订单明细
where 地区="华北"
and 客户.`客户ID`=订单.`客户ID`
and 订单.`订单ID`=订单明细.`订单ID`
and 产品.`产品ID`=`订单明细`.`产品ID`
-- 按运货商公司名称,统计1997年由各个运货商承运的订单的总数量
SELECT 运货商.`公司名称`,count(订单.订单ID) as 订单总数量
from 运货商,订单
where year(订单.`发货日期`)=1997
and 运货商.`运货商ID`=订单.`运货商`
GROUP BY `公司名称`
-- 统计1997年上半年的每份订单上所订购的产品的总数量
SELECT 订单.订单ID,sum(订单明细.数量) as 总数量,运货商.公司名称
from 订单,订单明细,运货商
where 订单.订购日期 BETWEEN "1997-01-01" and "1997-06-30"
and 订单.`订单ID`=`订单明细`.`订单ID`
and 订单.`运货商`=运货商.`运货商ID`
GROUP BY 订单.订单ID
-- 统计各类产品的平均价格
SELECT 类别.`类别名称`,类别.`类别ID`,round(sum(单价*库存量)/sum(库存量),2) as 平均价格
from 类别,产品
where 类别.类别ID=产品.类别ID
group by 类别名称
-- 统计各地区客户的总数量
select 地区,count(`客户ID`) as 客户总数量
from 客户
GROUP BY 地区
ORDER BY 客户总数量 asc |