| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> c.d.o.server -> Re: getting the nearest number from a column
A quick solution. May not be feasible because of the sort if your
table have lots of rows.
SQL> create table t(salary number);
Table created.
SQL> insert into t select trunc(dbms_Random.value(1000,5000)) from dual connect by level<11;
10 rows created.
SQL> select * from t;
SALARY
3734
3484
3345
1079
1311
1425
2505
2289
2779
4833
10 rows selected.
SQL> select salary from (select salary from t order by abs(&1-salary))
2 where rownum=1;
Enter value for 1: 1500
old 1: select salary from (select salary from t order by abs(&1-
salary))
new 1: select salary from (select salary from t order by abs(1500-
salary))
SALARY
1425
SQL> r
1 select salary from (select salary from t order by abs(&1-salary))
2* where rownum=1
Enter value for 1: 3300
old 1: select salary from (select salary from t order by abs(&1-
salary))
new 1: select salary from (select salary from t order by abs(3300-
salary))
SALARY
3345 Received on Mon Apr 09 2007 - 04:08:26 CDT
![]() |
![]() |