operations 306 308 or 310 cardinality services 134 returns to operation 304 to obtain the next database request it is important to note cardinality services 134 does not revert to operation 302 during which a complete database column scan is performed in a first embodiment of this invention a modification of linear counting technique is used to update the cardinality estimate in operations 306 308 and 310 and in a preferred embodiment a modification of logarithmic counting technique is used in these operations further detail of the process in fig3 will now be described using fig4 and 5 referring to fig4 a first embodiment of the present invention extends the linear counting technique to update the cardinality estimate in operations 306 308 and 310 in fig3 instead of maintaining a bit map that only indicates the absence or presence of a value the embodiment extends the system catalog table where column cardinality is stored to include an array of counts associated with each column see table 3 of fig2 e using the technique of this invention an element in the array of counts is either zero which indicates no data values hashed to the element or u201c n u201d indicating there were u201c n u201d data values that hashed to the element position the array of counts provides a capability to store the result of data value changes the capability of performing incremental maintenance of column cardinality estimates is then provided through the use of the counts at an instant in time the mth entry of the array of counts records the number.