首页 > 解决方案 > SUM 中围绕 BIGINT 的 SQL 语法

问题描述

下面的查询给了我来自 PSequel 的语法错误ERROR: syntax error at or near ","

SELECT
  bank_transfers.date as day,
  CAST(SUM(bank_transfers.amount_cents) as BIGINT) as gross_value
FROM bank_transfers
JOIN customers on customers.id = bank_transfers.customer_id
WHERE customers.id = 1
AND bank_transfers.date < Thu, 26 Nov 2020
AND bank_transfers.date >= Wed, 26 Aug 2020
GROUP BY day

所以我通过everysql验证器检查它并收到一个错误:

您的 SQL 语法有错误;似乎错误是:'BIGINT)AS Gross_value FROM bank_transfers JOIN customers ON customers.id ='在第 3 行

我错过了什么?

标签: sqlpostgresql

解决方案


您需要修复日期格式:

SELECT
  bank_transfers.date as day,
  CAST(SUM(bank_transfers.amount_cents) as BIGINT) as gross_value
FROM bank_transfers
JOIN customers on customers.id = bank_transfers.customer_id
WHERE customers.id = 1
AND bank_transfers.date < '2020-11-26'
AND bank_transfers.date >= '2020-08-26'
GROUP BY day

推荐阅读