I am writing the following query to IBM DB2 server:
SELECT
EMPNO,
YEAR(CURRENT TIMESTAMP - BIRTHDATE) AS AGE,
DENSE_RANK() OVER(ORDER BY YEAR(CURRENT TIMESTAMP - BIRTHDATE) ASC) AS RANK
FROM
DANDY.EMPLOYEE;
It works, but looks ugly, as I am repeating expression:
YEAR(CURRENT TIMESTAMP - BIRTHDATE)
But writing as follows doesn’t works:
DENSE_RANK() OVER(ORDER BY AGE ASC) AS RANK
How to make it better?
1 Answer