Function table / Level of detail / Smallest customer revenue

Smallest customer revenue, from Tableau to SQL

Aggregates customer totals once within each region. Below, 8 sample rows go through the calculation and through the SQL, and both return the same numbers.

Calculated field

MIN({ INCLUDE [Customer] : SUM([Revenue]) })

Sample data

RegionTeamCustomerRevenueSeatsDate
NorthCedarAster12042026-01-05
NorthCedarAster8022026-02-05
NorthCedarBirch30062026-01-12
NorthPineClover9032026-02-14
SouthElmDahlia20052026-01-08
SouthElmDahlia10022026-02-08
SouthAshFern7532026-01-20
SouthAshFern2512026-02-20

The same calculation as SQL

WITH customers AS (SELECT Region, Customer, SUM(Revenue) total FROM input GROUP BY Region, Customer) SELECT Region, MIN(total) FROM customers GROUP BY Region ORDER BY Region

Runs the example above.

Result

Regionresult
North90
South100

Same rows from the calculation and from the SQL in DuckDB.

Where a naive translation goes wrong

  • MIN of invoices picks a small invoice instead of the smallest whole customer total.

    Naive SQL

    SELECT "Region", MIN(Revenue) AS result FROM input  GROUP BY "Region" ORDER BY "Region"
    Regionresult
    North80
    South25

    Matches the calculation

    WITH customers AS (SELECT Region, Customer, SUM(Revenue) total FROM input GROUP BY Region, Customer) SELECT Region, MIN(total) FROM customers GROUP BY Region ORDER BY Region
    Regionresult
    North90
    South100

Signature

MIN({ INCLUDE [Customer] : SUM([Revenue]) })