From: Michael Tibbetts <tibbetts@head-cfa.harvard.edu>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Bruce Momjian <pgman@candle.pha.pa.us>
Cc: Jean-Luc Lachance <jllachan@nsd.ca>
Cc: Michael S. Tibbetts <mtibbetts@head-cfa.cfa.harvard.edu>
Cc: pgsql-sql@postgresql.org
Subject: Re: min() and NaN
Date: Tue, 22 Jul 2003 10:03:24 -0400
Message-ID: <200307221403.h6ME3Oxj007225@head-cfa.cfa.harvard.edu> (raw)
In-Reply-To: <tgl@sss.pgh.pa.us> <4074.1058854149@sss.pgh.pa.us>
Treating NaN's as larger(or smaller) than all ordinary values seems a fine way
to go.
It avoids the situation where you request MIN and get an ordinary value which
is greater than the minimum ordinary value in the table. If MIN(or MAX given
the ordering you're suggesting) returns NaN, the user would stand better odds
of figuring out that something about the query needs to be changed.
Returning an plausible, though possibly incorrect, ordinary value from MIN or
MAX if there are NaN's in the column can lead users to make some unfortunate
mistakes(voice of experience?).
Thanks for your help,
Mike
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > Is this a TODO?
>
> It'll only take ten minutes to make it a DONE, once we figure out what
> the behavior ought to be. So far I think both Stephan and I argued that
> MIN/MAX ought to treat NaN as larger than all ordinary values, for
> consistency with the comparison operators. That was not the behavior
> Michael wanted, but I don't see that we have much choice given the
> wording of the SQL spec. Does anyone want to argue against that
> definition?
>
> regards, tom lane
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: tibbetts@head-cfa.harvard.edu, tgl@sss.pgh.pa.us, pgman@candle.pha.pa.us, jllachan@nsd.ca, mtibbetts@head-cfa.cfa.harvard.edu
Subject: Re: min() and NaN
In-Reply-To: <200307221403.h6ME3Oxj007225@head-cfa.cfa.harvard.edu>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox