那表中一列有
234
432
123
213如何只找出
234 和123?

解决方案 »

  1.   

    select * from test where regexp_like(text,'(123|234)')
      

  2.   

    LZ开了两个帖子,另外一个帖子有用translate函数解答的还是不错. 楼上没有领会LZ的意思
      

  3.   

    SELECT TYPE
      FROM (SELECT ROW_NUMBER() OVER(PARTITION BY TRIM(T1.STR) ORDER BY T1.TYPE) AS RN,
                   T1.TYPE
              FROM (SELECT T1.TYPE, TRANSLATE(T1.TYPE, 'X', T2.TYPE) AS STR
                      FROM TEST1 T1, TEST1 T2) T1
             INNER JOIN (SELECT T1.TYPE, TRANSLATE(T1.TYPE, 'X', T2.TYPE) AS STR
                          FROM TEST1 T1, TEST1 T2) T2 ON T1.TYPE <> T2.TYPE
                                                     AND SUBSTR(T1.STR, 'X') = 0
                                                     AND SUBSTR(T2.STR, 'X') = 0
                                                     AND TRIM(T1.STR) =
                                                         TRIM(T2.STR))
     WHERE RN = 1