sql语句的用法(100分)

  • 主题发起人 主题发起人 zxy666666
  • 开始时间 开始时间
Z

zxy666666

Unregistered / Unconfirmed
GUEST, unregistred user!
请问在一个数据表中,如何用Sql语句,找出一个与其数据相接近的两条数据.
比如说:
我现在要求MyData.db中的其中一个字段Prev,与2接近两个数据,即大于2和小于2最接近的值(当然这里的2将会用变数不是固定的,也就是说可以设定).
数据表MyData.db数据如下:
ID Prev
1 0.1
2 0.5
3 1.3
4 1.2
5 1.8
6 1.5
7 2
8 2.8
9 2.3
10 2.2
11 2.6
.....

希望结果为: 1.8与2.2(即ID=5和ID=10)

谢谢!
 
先按Prev进行排序,再找出2,再根据2找它的上一行和下一行。
 
如果是mssql的话可以这样,select top 1 * from table1 where prev>2 order by prev
union (select top 1 * from table1 where prev<2 order by prev desc)
你看一下你那种数据库支持那种格式。
 
select max(prev) from 表 where prev<2
取得1.8
select min(prev) from 表 where prev>2
取得2.2
把2替换为你的变量就行了
 
不用排序
select *
from table
where
prev=(select max(prev) from table where prev<2) or
prev=(select min(prev) from table where prev>2)
 
多人接受答案了。
 

Similar threads

后退
顶部