【发布时间】:2018-01-19 10:38:22
【问题描述】:
我有三个表customers、orders和orderitems
客户表
CUSTOMER# LASTNAME FIRSTNAME
1001 MORALES BONITA
1002 THOMPSON RYAN
1003 SMITH LEILA
1004 PIERSON THOMAS
1005 GIRARD CINDY
1006 CRUZ MESHIA
1007 GIANA TAMMY
订单表
ORDER# CUSTOMER# ORDERDATE
1000 1005 31/MAR/09
1001 1010 31/MAR/09
1002 1011 31/MAR/09
1003 1001 01/APR/09
1004 1020 01/APR/09
订单项表
ORDER# ITEM# ISBN QUANTITY
1000 1 3437212490 1
1001 1 9247381001 1
1001 2 2491748320 1
1002 1 8843172113 2
1003 1 8843172113 1
1003 2 1059831198 1
我想为所有在 3 月份下过至少一个订单的客户打印客户姓名和客户下的订单总数。
我尝试了以下查询。我坚持这个问题。我在为 3 月至少下过一份订单的客户添加数量时遇到问题。
select c.firstname
, c.lastname
, or.orderitems#
from customers c
, orderitems or
where customer# in
(
select customer#
from orders
where order# in
(
select order#
from orderitems
where /* (query truncated) */
【问题讨论】:
-
为什么这个查询需要 Orderitems 表?
-
查找项数
-
您说“我想为所有在 3 月份至少下过一个订单的客户打印客户姓名和客户下的订单总数。”因此,您需要客户和订单,仅此而已。您能否发布该示例数据所需的结果?
-
它就像:Girard cindy 在 3 月只下了一个订单,所以只需打印 1。如果其他客户下的订单超过 1 件,则必须添加所有项目 NAME ITEM 1. Girrad Cindy 1