I am querying a data system with an OLEDB interface that supports SQL92. My query problem is equivalent to the one solved here: SQL Query to find earliest date dependent on column value changing, but the solution provided there and copied below is too advanced for SQL92:
SELECT JobCodeId, MIN(LastEffectiveDate) AS mindate
FROM (
SELECT *,
prn - rn AS diff
FROM (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY JobCodeID
ORDER BY LastEffectiveDate) AS prn,
ROW_NUMBER() OVER (ORDER BY LastEffectiveDate) AS rn
FROM @tmp
) q
) q2
GROUP BY
JobCodeId, diff
ORDER BY
mindate
What would a SQL92-compliant version of this solution look like?