sql-standards

Authoritative SQL standard documentation

試著忘記壹切 提交于 2019-11-30 18:40:26
I'm curious to know some more details about the various SQL standard's, i.e. SQL-92 , SQL:99 , SQL:2003 , SQL:2008 etc. There is a short and useful overview on Wikipedia , with links to very expensive documents. Why are those documents not open to public? Can I find some open and free information? Please, don't post links you found from Google. I'm interested in somewhat authoritative documentation only. Quoting from one of my web sites : We all love open source software. Wouldn’t it be great if international standard documents such as the SQL standard would be open too? As a matter of fact:

Why do I need to explicitly specify all columns in a SQL “GROUP BY” clause - why not “GROUP BY *”?

梦想与她 提交于 2019-11-27 22:58:20
This has always bothered me - why does the GROUP BY clause in a SQL statement require that I include all non-aggregate columns? These columns should be included by default - a kind of "GROUP BY *" - since I can't even run the query unless they're all included. Every column has to either be an aggregate or be specified in the "GROUP BY", but it seems like anything not aggregated should be automatically grouped. Maybe it's part of the ANSI-SQL standard, but even so, I don't understand why. Can somebody help me understand the need for this convention? It's hard to know exactly what the designers

Why do I need to explicitly specify all columns in a SQL “GROUP BY” clause - why not “GROUP BY *”?

落花浮王杯 提交于 2019-11-27 04:34:32
问题 This has always bothered me - why does the GROUP BY clause in a SQL statement require that I include all non-aggregate columns? These columns should be included by default - a kind of "GROUP BY *" - since I can't even run the query unless they're all included. Every column has to either be an aggregate or be specified in the "GROUP BY", but it seems like anything not aggregated should be automatically grouped. Maybe it's part of the ANSI-SQL standard, but even so, I don't understand why. Can