[英]Subquery in MS-Access SQL Syntax error
晚上好。
我正在尝试创建一个查询,对每个产品购买量与平均值进行比较。 购买次数以获得平均购买金额。
这包括三个表:
我这样写:
SELECT CUSTOMER.CUS_CODE, CUS_FNAME+" "+CUS_LNAME AS Name, CUSTOMER.CUS_BALANCE,
Sum([LINE]![LINE_NUMBER]*[LINE]![LINE_PRICE]) AS Total_purchases,
Count(INVOICE.INV_NUMBER) AS Number_of_purchases,
(
SELECT [Sum([LINE]![LINE_NUMBER]*[LINE]![LINE_PRICE]) /
[Count(INVOICE.INV_NUMBER)]
FROM INVOICE, LINE
WHERE INVOICE.INV_NUMBER = LINE.INV_NUMBER
) AS Average_purchase_amount
FROM CUSTOMER, INVOICE, LINE
WHERE CUSTOMER.CUS_CODE = INVOICE.CUS_CODE AND INVOICE.INV_NUMBER = LINE.INV_NUMBER
GROUP BY CUSTOMER.CUS_CODE, CUS_FNAME+" "+CUS_LNAME, CUSTOMER.CUS_BALANCE;
在第二个SELECT时出现错误。 我不知道为什么。 我觉得我缺少一些非常简单的东西。
实际错误为:
根据错误,我认为表达式中的某处没有排列整齐,但是我想我对所发生的事情还不了解,确切地知道它到底是什么。
有不平衡的括号。 每个括号都应放在方括号中或放在整个方程中:
SELECT [Sum([LINE]![LINE_NUMBER]*[LINE]![LINE_PRICE])] / [Count(INVOICE.INV_NUMBER)]
- 要么 -
SELECT [Sum([LINE]![LINE_NUMBER]*[LINE]![LINE_PRICE]) / Count(INVOICE.INV_NUMBER)]
尝试加入表格。 像这样:
FROM INVOICE
INNER JOIN CUSTOMER ON CUSTOMER.CUS_CODE = INVOICE.CUS_CODE
INNER JOIN LINE ON LINE.INV_NUMBER =INVOICE.INV_NUMBER
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.