首页 > 解决方案 > 如何修复 SQL 编码中的“ERROR 1064 you have an error in your SQL syntax”

问题描述

问题要求我编写 SQL 命令来按客户和产品列出总销售额,按客户小计和所有产品销售额的总计。但是,我不断输入的输入返回结果“第 1 行的错误 1064 (42000):您的 SQL 语法有错误。”

这是我尝试过的代码:

SELECT    CUS_CODE, P_CODE, SUM(SALE_UNTS*SALE_PRICE) AS TOTSALES
FROM      DWDAYSALESFACT NATURAL JOIN DWPRODUCT NATURAL JOIN DWVENDOR
GROUP BY  ROLLUP (CUS_CODE, P_CODE)
ORDER BY  CUS_CODE, P_CODE;

结果应显示 CUS_CODE、P_CODE 和 TOTSALES 列。

标签: mysqlsql

解决方案


正如@Dai 的评论中提到的,您的查询应该是这样的。

SELECT    CUS_CODE, P_CODE, SUM(SALE_UNTS*SALE_PRICE) AS TOTSALES
FROM      DWDAYSALESFACT NATURAL JOIN DWPRODUCT NATURAL JOIN DWVENDOR
GROUP BY  CUS_CODE, P_CODE WITH ROLLUP 
ORDER BY  CUS_CODE, P_CODE;

推荐阅读