Is this stuff really SQL 92 compliant

From: Terry Greenlaw <z50816_at_mip.lasc.lockheed.com>
Date: 9 Aug 1994 13:20:36 GMT
Message-ID: <327vr4$dgu_at_pong.lasc.lockheed.com>


Here's a couple of SQL difficulties we've bumped into. The results are similar in versions 6 and 7 of Oracle. Could someone please compare and contrast on some of the other SQL implementations.


Problem 1)

create table T
(c1 number, c2 number);
insert into T values ( 1,2);
insert into T values (null,2);

table T contains:

     C1 C2
     -- --
      1  2
         2

"select max(c1) from t" returns 1.
"select max(c2) from t" returns 2.
"select greatest(c1,c2) from t"

    returns 2 for the first record
    but it returns NULL for the second.

Shouldn't least and greatest have the same functionality on columns that min and max do on rows in that you're asking for the greatest or least KNOWN value?


Problem 2)

select * from T where c1 between 0 and 1 returns the first row of table T above.

select * from T where c1 between 1 and 0 returns no rows.

Aren't the ranges for the between function supposed to be transposable?


Terry Greenlaw on site at |---------Word association question #14---------- z50816_at_mip.lasc.lockheed.com |Compuserve is to the Internet like __ is to Unix

Encompass Technologies       |  a) Buffalo     c) A $200.00 copy of DOS
greenlaw_at_crl.com             |  b) DOS         d) A $200.00/month copy of DOS
Received on Tue Aug 09 1994 - 15:20:36 CEST

Original text of this message