(´д`;)うへぇ、SQL Serverでは列のエイリアスをgroup byで使うことはできないの??
select (HOGE + MOGE) as AA, SUM(POGE) as BB from NULLPO_TABLE group by AA;
「列名が無効」と言われてしまう。where句でもダメポだが、order byでは列エイリアス名が使用可能。うーん、プログラム的にはそうなる理由はなんとなく理解できるが、仕様としては中途半端だなぁ。
ANSI SQLの仕様ではエイリアスが使えなくてもよいらしいので、この仕様は標準準拠のようだ。MySQLやPostgreSQLでは普通に使えたので、どのRDBMSでも使えるものだと思っていたのだが、思い込みはよろしくないですのう。DB2やOracleではどうなんだろう…