如何编写SQL查询,以汇总前几天/前几年的金额。从一开始就喜欢。
方案我想计算商店开业当天的累计销售额。
示例
SELECT SUM(AMOUNT)
FROM TransactionTable
WHERE TransactionDate = ???
我的计划是查询此表并获取最旧的交易日期记录,然后在WHERE
条件下使用该记录。您认为这是最好的解决方案吗?
答案 0 :(得分:3)
您可以在下面使用having min(transaction)
进行尝试,这将为您提供开始交易的日期
select sum (amt) from
(
SELECT SUM(AMOUNT) as amt from TransactionTable
group by TransactionDate
having TransactionDate between min(TransactionDate) and getdate()
)A
答案 1 :(得分:2)
要计算商店开业当天的累计销售额,可以将SUM
与OVER
子句一起使用
SELECT TransactionDate, SUM(AMOUNT) OVER (ORDER BY TransactionDate) AS AccumulatedSales
FROM TransactionTable
答案 2 :(得分:0)
使用group by
TransactionDate
SELECT convert(date,TransactionDate), SUM(AMOUNT) from TransactionTable
group by convert(date,TransactionDate)