隨筆 - 6  文章 - 129  trackbacks - 0
          <2011年8月>
          31123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          常用鏈接

          留言簿(14)

          隨筆檔案(6)

          文章分類(467)

          文章檔案(423)

          相冊

          收藏夾(18)

          JAVA

          搜索

          •  

          積分與排名

          • 積分 - 826522
          • 排名 - 49

          最新評論

          閱讀排行榜

          評論排行榜

          今天一同事問我以下需求用SQL如何實現
          需求:
          LWH_TEST表一個SEQ欄位,對應的值(不連續的流水碼)
          1,
          2,
          4,
          6,
          8
          .
          .
          .

          以下SQL可查出缺失的流水號:3,5,7...

          select b.SEQ - a.SEQ, b.SEQ, a.SEQ from
          ( select SEQ , ROWNUM RN from (select SEQ from LWH_TEST order by SEQ) ) a,
          ( select SEQ , ROWNUM RN from (select SEQ from LWH_TEST order by SEQ) ) b
          where a.RN+1 = b.RN
          and b.SEQ - a.SEQ > 1


          感覺還可以



          posted on 2011-02-23 15:55 Ke 閱讀(598) 評論(3)  編輯  收藏 所屬分類: oracle

          FeedBack:
          # re: 查出不連續,中斷的流水碼 2011-02-23 16:09 劉文彬
          這條SQL, 我已經見識過了, 非常厲害, 以后肯定會有機會用到, 我頂啊~  回復  更多評論
            
          # re: 查出不連續,中斷的流水碼[未登錄] 2011-08-30 02:17 cc
          為什么查不出來??  回復  更多評論
            
          # re: 查出不連續,中斷的流水碼 2012-11-01 11:01 wenbinliu
          查詢的方式為1-4 7-9 13- 17
          -------------查詢不連續的流水碼---------------------

          SELECT MIN (b.seq) Start_HM, MAX (b.seq) End_HM
          FROM (SELECT a.*, TO_NUMBER (a.seq - ROWNUM) cc
          FROM (SELECT *
          FROM LWH_TEST
          ORDER BY seq) a) b GROUP BY b.cc
          示例:
          SELECT MIN (b. csn) start_hm, MAX (b.csn) end_hm
          FROM (SELECT a.*, TO_NUMBER (a.customer_sn - ROWNUM) cc
          FROM (SELECT substr(customer_sn,-8) customer_sn,customer_sn csn
          FROM g_sn_status where WORK_ORDER ='24020680-1.1-001-P'
          ORDER BY customer_sn) a) b
          GROUP BY b.cc   回復  更多評論
            
          主站蜘蛛池模板: 颍上县| 浙江省| 襄樊市| 东兰县| 石台县| 临清市| 南郑县| 迁西县| 大田县| 西峡县| 仁寿县| 惠来县| 道孚县| 襄城县| 大城县| 福海县| 和林格尔县| 汉寿县| 迁西县| 邛崃市| 陈巴尔虎旗| 关岭| 桐乡市| 左贡县| 通榆县| 剑川县| 安图县| 济源市| 廉江市| 大冶市| 陆河县| 沂水县| 临桂县| 长沙市| 封丘县| 神农架林区| 德兴市| 喜德县| 彭泽县| 虎林市| 迭部县|