Start a conversation ↗

FORMULA & SQL / TOTALS

Total for this month.
Tested, not guessed.

The Excel and Google Sheets formula and the SQL query, each run on the rows below. Open this with your own data ↗

The example rows

RowA: RegionB: RepC: AmountD: Order DateE: StatusF: Customer
2NorthAna1,2002026-03-01PaidJo Smith
3SouthBen4502026-03-15OpenRaj Patel
4NorthCy3002026-04-02PaidLee Wong
5EastAna980.502026-04-20PaidMia Ross
6NorthBen752026-05-05OpenJo Smith
7WestDee1,6402026-05-18PaidSam Okoro

The formula

Excel
=SUMIFS(C:C,D:D,">="&EOMONTH(TODAY(),-1)+1,D:D,"<="&EOMONTH(TODAY(),0))

The total of the Amount column (C:C) where the Order Date column (D:D) is at least the last day of the month minus 1 months from today plus 1 and the Order Date column (D:D) is at most the last day of the month 0 months from today.

Run on the example rows:

Result0

The SQL

PostgreSQL
SELECT SUM(amount) AS total
FROM sales
WHERE DATE_TRUNC('month', order_date) = DATE_TRUNC('month', CURRENT_DATE)

Run on the example rows:

total
Other databases
MySQL
SELECT SUM(amount) AS total
FROM sales
WHERE DATE_FORMAT(order_date, '%Y-%m-01') = DATE_FORMAT(CURDATE(), '%Y-%m-01')
SQL Server
SELECT SUM(amount) AS total
FROM sales
WHERE DATEFROMPARTS(YEAR(order_date), MONTH(order_date), 1) = DATEFROMPARTS(YEAR(CAST(GETDATE() AS date)), MONTH(CAST(GETDATE() AS date)), 1)
SQLite
SELECT SUM(amount) AS total
FROM sales
WHERE strftime('%Y-%m-01', order_date) = strftime('%Y-%m-01', date('now'))
BigQuery
SELECT SUM(amount) AS total
FROM sales
WHERE DATE_TRUNC(order_date, MONTH) = DATE_TRUNC(CURRENT_DATE(), MONTH)
Snowflake
SELECT SUM(amount) AS total
FROM sales
WHERE DATE_TRUNC('month', order_date) = DATE_TRUNC('month', CURRENT_DATE)

Your own data

Paste your rows into the free tool and it writes this for your columns, then runs it on your data before you copy it. Open the tool ↗

Bring us the problem. We'll work through the system.

Your next
hard problem.↗