This forum is devoted to the SQL*Plus and iSQL*Plus front ends. This question doesn't have anything to do with any front end, does it? In the future, you'll get better response if you post questions like this in the SQL and PL/SQL.
WITH got_nums AS ( SELECT table_x.* -- or list columns wanted , ROW_NUMBER () OVER (ORDER BY call_date ) AS a_num , ROW_NUMBER () OVER (ORDER BY call_date DESC) AS d_num FROM table_x WHERE mobile_no = 989 AND call_date >= DATE '2013-04-25' AND call_date < DATE '2013-04-26' + 1 ) SELECT * -- or list all columns except a_num and d_num FROM got_nums WHERE 1 IN (a_num, d_num) ;