次のクエリを IBM DB2 サーバーに書き込んでいます。
SELECT
EMPNO,
YEAR(CURRENT TIMESTAMP - BIRTHDATE) AS AGE,
DENSE_RANK() OVER(ORDER BY YEAR(CURRENT TIMESTAMP - BIRTHDATE) ASC) AS RANK
FROM
DANDY.EMPLOYEE;
機能しますが、表現を繰り返しているため、見栄えが悪くなります。
YEAR(CURRENT TIMESTAMP - BIRTHDATE)
しかし、次のように書いてもうまくいきません。
DENSE_RANK() OVER(ORDER BY AGE ASC) AS RANK
それをより良くする方法は?