From: Dan Nelson Date: September 17 2002 7:30pm Subject: Re: aggregate functions producing bad data List-Archive: http://lists.mysql.com/mysql/119854 Message-Id: <20020917193037.GA17027@dan.emsphone.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In the last episode (Sep 17), Brian Reichert said: > On Tue, Sep 17, 2002 at 11:59:42AM -0700, Richard Unger wrote: > > My query: > > > > SELECT > > count(id), > > count( IF(call_end - call_start > 5, id, NULL) ), > > count( IF(call_end - call_start <= 5, id, NULL) ) > > FROM > > t_calllog_calls; > > > > My result: > > > > 1994 > > 1956 > > 35 > > > > However, 1956 + 35 != 1994. > > > > Running MySQL 3.23.49-nt > > One thing I'd check: what happens if t_calllog_calls.id is NULL? Also check if call_end or call_start are NULL; that will cause both IFs to fail. Don't you love NULLs :) -- Dan Nelson dnelson@stripped