What any particular DB accepts is not necessarily standardized SQL. *Every* DB has its own dialect, and will happily accept stuff that no other DB accepts. It's the responsibility of the developer to make sure no non-standard SQL is used, if she wants the queries to be portable across DBs.
Ping & DNS - updated with new look and Ping home screen widget
Joined: Aug 30, 2005
Welll part of the problem was that my version of hsqldb was old.
that fixed some issues.\\\\\
nevertheless... its clear to me that complex aliasing and queries are better implemented in either oracle or mysql.\\\
at least when hibernate comes into the picture....
PostgreSQL also does not accept such "loose" syntax.
I am, in fact, surprised at the way MySQL implemented this. If you don't aggregate over a column which you don't group by, which value do you want/expect? MySQL, it seems, just returns the first value encountered, or a random value in the set perhaps? Either way it's a little misleading. Here is an example:
select Height, avg(Weight), Shoe_Size from X group by Height; => 1, 3, ??? (is it 3, 4, or 5) and more importantly what should it be? I argue it should just throw an error, like HSQLDB, PostgreSQL and a few others do.