SUBSTR返回的是一个字符串, 
SELECT SUBSTR(A,1) FROM TABLE1 
UNION SELECT B FROM TABLE2B是VARCHAR时, 就会提示不匹配, 
怎么改一下可以呢, 最好是改变SUBSTR(A,1)

解决方案 »

  1.   


    SQL> 
    SQL> select 'aaa' from dual
      2    union
      3    select 'bb    ' from dual
      4  ;'AAA'
    ------
    aaa
    bb
      

  2.   

      你的SUBSTR去哪了啊 
      

  3.   

    substr(字符串,开始位置,截取长度),严格按此格式执行下看看
      

  4.   

    SELECT   SUBSTR(A,1)   FROM   TABLE1   
    UNION   SELECT   B   FROM   TABLE2 
    SUBSTR(A,1)返回的是字符串类型的 ,  B 是VARCHAR类型的, 怎么通过转换使这个类型一样, 
      

  5.   

    或者
     B  是NUMBER型的呢, 怎么转换呢
      

  6.   


    SELECT      Substr('aaa',1,1)     FROM       dual
    UNION       SELECT       'b'      FROM       dual
    S
    -
    a
    bB     是NUMBER型,直接截取就可以了[code=SQL]
    SELECT     substr(111111,1,1)     FROM       dual
    UNION       SELECT       'b'      FROM       dualS
    -
    1
    b[code=SQL]
     
    不知道是不是楼主要的结果.
      

  7.   

    SELECT  Substr('sss',1,3) FROM  dual
    UNION  
    SELECT  to_char(b) FROM  dual
      

  8.   

    SELECT   SUBSTR(A,1,3)   FROM   TABLE1   
    UNION   SELECT substr(B,1,3)   FROM   TABLE2 
    這樣應該就可以啊
      

  9.   

    substr 是带有三个参数的,楼主你的SQL就两个参数,所以有错。应该是:
    SELECT substr('A',1,1) FROM dual 
    UNION
    SELECT 'AAA' FROM dual;