急!!!

解决方案 »

  1.   

    如果是固定长度隔开的
    可以参考我这个,我这个是6位用,隔开的SELECT     TO_NUMBER
                                              (DECODE
                                                  (LENGTH (in_promo_id),
                                                   6, in_promo_id,
                                                   SUBSTR
                                                      (in_promo_id,
                                                       DECODE
                                                             (ROWNUM,
                                                              1, 1,
                                                                INSTR
                                                                     (in_promo_id,
                                                                      ',',
                                                                      1,
                                                                      ROWNUM - 1
                                                                     )
                                                              + 1
                                                             ),
                                                       6
                                                      )
                                                  )
                                              ) promo_id
                                      FROM DUAL
                                CONNECT BY ROWNUM <=
                                                LENGTH (in_promo_id)
                                              - LENGTH (REPLACE (in_promo_id,
                                                                 ',',
                                                                 ''
                                                                )
                                                       )
                                              + 1
    传进来的in_promo_id
    格式如下
    可能是100000
    也有可能是100001,100002,100004
      

  2.   

    因为转出来的要转换成数字,你不需要转换的话,就把to_number去掉
    长度固定,但不是6的话,把我的语句里所有6改成你的长度
      

  3.   

    如果是不固定长度的,稍微麻烦点
    其实关键就是substr 和instr配合起来截取,用instr找到起始位置,然后再用instr来算出要截取的长度
    就是要注意第一个和最后个