Něco jako limit jde na MSSQL od 2005 dělat taky celkem použitelně, i když v oracle nebo mysql to je jednodušší. U databází je ten standard ale v podstatě na nic, protože skoro nic neřeší, takže si to každá db řeší po svém (třeba ten limit). Důsledek je, že existuje standard a stejně je v tom chaos a co se člověk naučí na jedné db, tak na jiné nefunguje.
Nevím, co myslíš tím, že "Microsoft dělá to samé a taky mu to prochází." Pokud by MySQL byl normální prg jazyk, tak tím svým chováním v group by umožňuje něco jako
int i;
int[] pole = {1,2,3,4,5};
i = pole;
To prostě nedává smysl a nikdo jiný takový zápis neumožňuje.