select translate('0123456789', '#'|| t.col1 ,'#' )
from table1 t

解决方案 »

  1.   

    SELECT *
      FROM (-- 0..9 的列表
            SELECT ROWNUM-1 rn FROM DUAL
            CONNECT BY ROWNUM-1 < 9
           ) t
     WHERE NOT EXISTS (SELECT *
                         FROM 表
                        WHERE 字段 = t.rn)
      

  2.   


    好,表的数据
    tab   a
    col1
    1
    2
    7
    4
    9现在有一个数值范围,比如说0~9的10个数,要查出在这个范围类没有在表中出现的数值,即查询结果为:
    0
    3
    5
    6
    8
      

  3.   

    select rownum-1 s from dual connect by rownum<=10
    minus
    select col1 from a;
      

  4.   

    MINUS 比 NOT EXISTS 简单。
    这倒是 Oracle 特有的,还真不记得有这个语法了。
      

  5.   

    用 not in , not exists ,或 minus 都可以。 楼上几位都给出了例子。