Start a conversation ↗

FORMULA & SQL / TOTALS

Each row as a percent of the total.
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
=C2/SUM($C$2:$C$7)

Amount (C2) divided by the total of the Amount column ($C$2:$C$7).

Format the column as a percentage.

Run on the example rows:

RowResult
20.2583
30.0969
40.0646
50.2111
60.0161
70.353

The SQL

PostgreSQL
SELECT *, ROUND(100.0 * amount / SUM(amount) OVER (), 2) AS percent_of_total
FROM sales

Run on the example rows:

regionrepamountorder_datestatuscustomerpercent_of_total
NorthAna12002026-03-01PaidJo Smith25.83
SouthBen4502026-03-15OpenRaj Patel9.69
NorthCy3002026-04-02PaidLee Wong6.46
EastAna980.52026-04-20PaidMia Ross21.11
NorthBen752026-05-05OpenJo Smith1.61
WestDee16402026-05-18PaidSam Okoro35.3
Other databases
MySQL
SELECT *, ROUND(100.0 * amount / SUM(amount) OVER (), 2) AS percent_of_total
FROM sales
SQL Server
SELECT *, ROUND(100.0 * amount / SUM(amount) OVER (), 2) AS percent_of_total
FROM sales
SQLite
SELECT *, ROUND(100.0 * amount / SUM(amount) OVER (), 2) AS percent_of_total
FROM sales
BigQuery
SELECT *, ROUND(100.0 * amount / SUM(amount) OVER (), 2) AS percent_of_total
FROM sales
Snowflake
SELECT *, ROUND(100.0 * amount / SUM(amount) OVER (), 2) AS percent_of_total
FROM sales

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.↗