A dynamic value banding report is organized as a series of report row headers that deﬁne a progressive set of varying-sized ranges of a target numeric fact. For instance, a common value banding report in a bank has many rows with labels such as “Balance from 0 to $10,” “Balance from $10.01 to $25,” and so on. This kind of report is dynamic because the speciﬁc row headers are deﬁned at query time, not during the ETL processing. The row deﬁnitions can be implemented in a small value banding dimension table that is joined via greater-than/less-than joins to the fact table, or the deﬁnitions can exist only in an SQL CASE statement. The value banding dimension approach is probably higher performing, especially in a columnar database, because the CASE statement approach involves an almost unconstrained relation scan of the fact table.