您好,匿名用户
随意问技术百科期待您的加入

多个条件并按区间排序的的查询如何高效的解决

0 投票

查询一个结果集,靠三个条件来排序,取排名靠前的100个作为结果

第一个条件:

“距离”,按三个区间排:1km以内,1-10km,10km以外

第二个条件:

“最后活跃时间”,按三个区间排:1-8小时,8-24小时,24小时以外

第三个条件:

“最后使用指定功能的时间”:按时间从新到旧

假设,第一个条件“1km”以内的有300个(大于100),那么就要看这300个中,第二个条件“最后活跃时间”在“1-8小时”的有多少个,若小于100,则看“8-24小时”的有多少个,若与“1-8小时”的数量一共大于100,则按第三个条件“最后使用指定功能的时间”从新到旧将这些结果排序,并取前100个。

用户头像 提问 2012年 12月1日 @ Riven 上等兵 (334 威望)
分享到:

你的回答

隐私保护: 您的邮箱仅用于发送系统通知。
请输入验证码:
    图片验证码看不清?
登录注册后不会被要求输入验证码。

提一个问题:

相关问题

0 投票
1 回复 22 阅读
0 投票
1 回复 80 阅读
0 投票
1 回复 29 阅读
用户头像 提问 2012年 12月1日 @ Anivia 上等兵 (276 威望)
0 投票
0 回复 9 阅读
用户头像 提问 2014年 3月7日 @ Rammus 上等兵 (334 威望)
0 投票
1 回复 64 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...