老标题sql语句

a291410855 2012-08-09 05:16:42
id,lat(纬度),lng(经度),image(image类型),returntime


做查询,按照时间排序,条件涉及到相邻两条或几条数据的比较,应该怎样写查询条件呢?如果要用到零时表应该怎么写?

例如:过滤掉前后两条lat相差大于0.1的后一条数据,再用第三条数据和第一条数据比较,如果还相差大于0.1再过滤.



这个表是百万级以上数据表.


数据库为sql server数据库
...全文
139 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
gogodiy 2012-08-10
  • 打赏
  • 举报
回复
过滤前后两条,你这个前后两条如何界定呢?
noone_sky 2012-08-10
  • 打赏
  • 举报
回复
select a.id,a.lat,a.lng,a.image,a.returntime
from tb a (nolock) left outer join tb b(nolock) on a.returntime<b.returntime
where abs(a.lat-isnull(b.lat,a.lat))<0.1
group by a.id,a.lat,a.lng,a.image,a.returntime
order by a.returntime

试试这样的写法
tim_spac_126 2012-08-09
  • 打赏
  • 举报
回复
select *
from tb a
where not exists (
select 1
from tb b
where 1=1
and b.returntime < a.returntime
and abs(b.lat - a.lat) < 0.1
)

唐诗三百首 2012-08-09
  • 打赏
  • 举报
回复
唐诗不才,没看懂..
ORAClE SE 2012-08-09
  • 打赏
  • 举报
回复
这分没能力挣了。

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧