Le vendredi 25 novembre 2011 23:14:31, Even Rouault a écrit : > Hi, > > http://trac.osgeo.org/gdal/ticket/4354 : > > """Currently, OGR SQL considers COUNT(a_column) as a synonym of COUNT(*). > However the standard mandates that COUNT(a_column) only count non-NULL > values, whereas COUNT(*) count all rows (after the effect of WHERE clause > of course). So COUNT(a_column) should not be considered as equivalent to > COUNT(*) The same applies for COUNT(DISTINCT a_column): it should only > count unique non-NULL values. > What is a bit annoying here is that ogr_sql.html says that : "As a special > case, the COUNT() operator can be given a "*" argument instead of a field > name which is a short form for count all the records though it would get > the same result as giving it any of the column names [...]" > If we fix the current behaviour to be conformant with the standard, it can > break assumptions made by users. But currently, there's an inconsistency if > you look at the result of -sql "select sum(foo), count(foo), avg(foo) from > bar" when there are null values. > """ > Perhaps only fix that in trunk (the current behaviour existed in 1.7 and > likely previous versions, not only in 1.8) ? and in the doc, add a note > about the difference between new and old behaviour ?
Commited in trunk only > _______________________________________________ > gdal-dev mailing list > [email protected] > http://lists.osgeo.org/mailman/listinfo/gdal-dev _______________________________________________ gdal-dev mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/gdal-dev
