Есть много способов сделать это.Если вы используете Db2 LUW 11.1 или выше, это будет работать
SELECT * FROM TABLE(VALUES
( ( select value from a_table WHERE name='VAR' ORDER BY effectivedate DESC FETCH FIRST 1 ROW ONLY)
, ( select value from a_table WHERE name='VAR' ORDER BY effectivedate DESC OFFSET 1 ROW FETCH NEXT 1 ROW ONLY )
)) AS t(VAR1, VAR2)
, и с этой таблицей и данными
create TABLE a_table( value int, name char(3), effectivedate date);
INSERT INTO a_table values (12,'VAR','2018-01-10'),(57,'VAR', '2018-01-09'),(1,'VAR','2018-01-08');
вернет этот результат
VAR1 VAR2
---- ----
12 57