比如一视图如下
CREATE OR REPLACE VIEW V_ORG AS
SELECT ORG.ORGANIZATIONID,
       ORG.NAME AS ORGANIZATIONNAME,
       ORG.PARENTORGANIZATIONID AS PARENTID
  FROM ORGANIZATION_ ORG
现在我想把(111,hah,222)这行数据合并到视图里,这一行从ORGANIZATION_查不到,也不是从别的表里查的,算特殊值吧,这个union all该怎么写哈

解决方案 »

  1.   

    CREATE TABLE ORGANIZATION_(ORGANIZATIONID VARCHAR2(10),NAME VARCHAR2(15),PARENTORGANIZATIONID  VARCHAR2(10));INSERT INTO ORGANIZATION_ VALUES ('000','niu xiong',111);
    INSERT INTO ORGANIZATION_ VALUES ('222','li lei',333);
    INSERT INTO ORGANIZATION_ VALUES ('333','han mei mei',444);CREATE OR REPLACE VIEW V_ORG AS
    SELECT ORG.ORGANIZATIONID,
      ORG.NAME AS ORGANIZATIONNAME,
      ORG.PARENTORGANIZATIONID AS PARENTID
      FROM ORGANIZATION_ ORG 
      UNION ALL 
      SELECT '111' ORGANIZATIONID,'hah' ORGANIZATIONNAME,'222' PARENTID FROM dual;SELECT * FROM V_ORG;result:
    ORGANIZATIONID ORGANIZATIONNAME PARENTID
    000 niu xiong 111
    222 li lei 333
    333 han mei mei 444
    111 hah 222
      

  2.   

    CREATE OR REPLACE VIEW V_ORG AS
    SELECT ORG.ORGANIZATIONID,
      ORG.NAME AS ORGANIZATIONNAME,
      ORG.PARENTORGANIZATIONID AS PARENTID,
    111,hah,222
      FROM ORGANIZATION_ ORG
      

  3.   

    CREATE OR REPLACE VIEW V_ORG AS
    SELECT ORG.ORGANIZATIONID,
      ORG.NAME AS ORGANIZATIONNAME,
      ORG.PARENTORGANIZATIONID AS PARENTID
      FROM ORGANIZATION_ ORG 
      UNION ALL 
      SELECT '111' ORGANIZATIONID,'hah' ORGANIZATIONNAME,'222' PARENTID FROM dual;
      

  4.   

    CREATE OR REPLACE VIEW V_ORG AS
    SELECT ORG.ORGANIZATIONID,
      ORG.NAME AS ORGANIZATIONNAME,
      ORG.PARENTORGANIZATIONID AS PARENTID
      FROM ORGANIZATION_ ORG  
      UNION ALL  
      SELECT '111' ,'hah' ,'222' FROM dual;
      

  5.   

    1楼正解,UNION ALL 一下就OK了,就这么简单!以后再还有数据要添加的话(在原表中不存在,也不想将数据插入原表),就继续UNION ALL !