SQL> ed
  1  with t as (
  2  select xmltype(bfilename('VDIR','x.xml'),nls_charset_id('ZHS16GBK')) x from dual
  3  )
  4  select xc.*
  5  from t, xmltable('/TRS/REC'
  6   passing x
  7   columns "作者" varchar2(20) path '作者',
  8           "修改日期" char(10) path '修改日期',
  9           "分类" varchar2(30) path '分类',
 10           "发表日期" char(10) path '发表日期',
 11           "字数" number(4) path '字数',
 12           "录入员" varchar2(20) path '录入员',
 13           "录入日期" char(10) path '录入日期',
 14           "日期" char(10) path '日期',
 15           "来源" varchar2(30) path '来源',
 16           "标题" varchar2(20) path '标题',
 17           "正文" varchar2(4000) path '正文',
 18           "正文字数" number(4) path '正文字数',
 19*          "状态" varchar(10) path '状态') xc如何将查询的结果插入到指定的表中!

解决方案 »

  1.   

    insert into tableName select ......... 不行吗?
      

  2.   


    insert into 指定表
    with t as (
    ....
    ....
    )
    select ....from t
      

  3.   

    insert into  目标表 with t as(.......) select * from t
      

  4.   


    ed
       insert into test1 values
       (with t as (
       select xmltype(bfilename('VDIR1','1.xml'),nls_charset_id('ZHS16GBK')) x from dual
       )  
       select xc.*
       from t, xmltable('/TRS/REC'
        passing x
        columns "作者" varchar2(20) path '作者',
                "修改日期" char(10) path '修改日期',
                "分类" varchar2(30) path '分类',
                "发表日期" char(10) path '发表日期',
                "字数" number(4) path '字数',
                "录入员" varchar2(20) path '录入员',
                "录入日期" char(10) path '录入日期',
                "日期" char(10) path '日期',
                "来源" varchar2(30) path '来源',
                "标题" varchar2(20) path '标题',
                "正文" varchar2(4000) path '正文',
                "正文字数" number(4) path '正文字数',
               "状态" varchar(10) path '状态') xc)
    提示缺失表达式!!!
      

  5.   

    insert into test1 
       with t as (
       select xmltype(bfilename('VDIR1','1.xml'),nls_charset_id('ZHS16GBK')) x from dual
       )  
       select xc.*
       from t, xmltable('/TRS/REC'
        passing x
        columns "作者" varchar2(20) path '作者',
                "修改日期" char(10) path '修改日期',
                "分类" varchar2(30) path '分类',
                "发表日期" char(10) path '发表日期',
                "字数" number(4) path '字数',
                "录入员" varchar2(20) path '录入员',
                "录入日期" char(10) path '录入日期',
                "日期" char(10) path '日期',
                "来源" varchar2(30) path '来源',
                "标题" varchar2(20) path '标题',
                "正文" varchar2(4000) path '正文',
                "正文字数" number(4) path '正文字数',
               "状态" varchar(10) path '状态') xc
      

  6.   


    还要with做什么?
    from ()不就行了。