Access中的简单子查询

时间:2012-01-13 15:24:08

标签: sql database ms-access

我有一个Subquery问题,我确信它有一个非常简单的解决方案,但我无法弄清楚它是什么!

这是我正在尝试做的事情,我有两张桌子,比方说客户和订单。客户表显然存储了单个客户的列表,订单表存储了客户发出的订单列表。我正在尝试创建一个查询,该查询将返回每个客户的详细信息以及该客户下达的总订单金额。尽我所能,我似乎无法让这个查询工作,因为它说:

“您编写的子查询可以返回多个字段而不使用主查询的from子句中的EXISTS保留字。”

我想尝试这样的东西,请问任何人可以提出什么问题吗?

select
  customer.name,
  customer.address,
  (select sum(order.orderamount) from order, customer where order.customerid = customer.id)
from
  customer

谢谢!

1 个答案:

答案 0 :(得分:3)

select 
  customer.name, 
  customer.address, 
  (select sum(order.orderamount) from order where order.customerid = customer.id) as amount
from customer 

但你可以在没有子查询的情况下做到这一点:

select 
  customer.name, 
  customer.address, 
  sum(order.orderamount) 
from order 
   join customer on order.customerid = customer.id
group by   customer.name,   customer.address