董松建 2017-02-22 07:30 采纳率: 33.3%
浏览 1243

oracle 多字段排序,取连续的某个区

按a,b,c三个字段排序,再取某两条记录中间的全部记录。

假设 a,b,c全是数值型。我想取 (a,b,c)=(1,3,1) 和 (a,b,c)=(4,1,2)这两条记录之间的记录。

where (a between 1 and 4) and (b between 3 and 1) and (c between 1 and 2)类似这样的答案就别来添乱了。不信的话自己试试,一条记录也不可能返回。

我现在用的是 where (a >1 and a3) or (a=1 and b=3 and c>1) or (a=4 and b<1) or ( a=4 and b=1 and c<2)
但是如果条件字段再多的话,where会很长。请问有没有什么高大上一点的写法。

  • 写回答

2条回答

      报告相同问题?

      相关推荐 更多相似问题

      悬赏问题

      • ¥15 ue如何做自然的物体边缘磨损效果材质
      • ¥15 求解答,急,本人真的是没有办法了
      • ¥15 我是在windows环境下通过IIS部署django项目,但是是这样怎么处理呢
      • ¥15 python 循环语句问题
      • ¥30 51单片机测量脉冲周期/频率并加以计算、显示
      • ¥50 图书期刊管理系统c++
      • ¥20 c语言基础,设计带界面的小应用
      • ¥15 Erplab无法创建事件清单
      • ¥15 fdisk输入n后不提示选择分区类型
      • ¥15 关于#java#snaker 工作流的问题,如何解决?