1. A method executed by at least one processor in a database system comprising: receiving, by the at least one processor, a query to aggregate at least one attribute of a temporal table, wherein the temporal table includes plural tuples, wherein each tuple contains the at least one attribute and distinct timestamps including starting and ending timestamps, wherein the at least one attribute is different from the starting timestamp and ending timestamp; and in response to the query, the at least one processor: computing value changes in the at least one attribute at the distinct timestamps, wherein computing the value changes comprises: at each given one of the distinct timestamps, determining whether the given timestamp corresponds to a starting timestamp or an ending timestamp of a particular one of the tuples; if the given timestamp is the starting timestamp, providing a positive value change corresponding to the value of the at least one attribute in the particular tuple; and if the given timestamp is an ending timestamp, providing a negative value change corresponding to the value of the at least one attribute in the particular tuple; and aggregating the value changes to produce an aggregate value for the query, wherein the aggregate value is the aggregate of the positive and negative values associated with the at least one attribute.