Jcat
          寵辱不驚,閑看庭前花開花落~~
          posts - 173,comments - 67,trackbacks - 0
          Most INSERT statements are the single-table variety, but Oracle also supports a multiple-table INSERT statement. With a multitable insert, you can make a single pass through the source data and load the data into more than one table.

          [ ALL | FIRST ]
          WHEN condition THEN insert_into_clause [values_clause]
          [insert_into_clause [values_clause]]...
          [WHEN condition THEN insert_into_clause [values_clause]
          [insert_into_clause [values_clause]]...
          ]...
          [ELSE insert_into_clause [values_clause]
          [insert_into_clause [values_clause]]...
          ]

          If a WHEN condition evaluates to TRUE, the corresponding INTO clause is executed. If no WHEN condition evaluates to TRUE, the ELSE clause is executed. The keyword ALL tells the database to check each WHEN condition. On the other hand, the keyword FIRST tells the database to stop checking WHEN conditions after finding the first TRUE condition.


          --test?case
          create?table?insert_test_case
          (
          id?
          number(1)
          )

          create?table?insert_test01
          (
          id?
          number(1)
          )

          create?table?insert_test02
          (
          id?
          number(1)
          )

          create?table?insert_test03
          (
          id?
          number(1)
          )

          insert?into?insert_test_case?values(1)
          insert?into?insert_test_case?values(2)
          insert?into?insert_test_case?values(3)
          insert?into?insert_test_case?values(4)
          insert?into?insert_test_case?values(5)


          --3 rows inserted
          insert?first?
          ??
          when?id=1?then?into?insert_test01?values(id)
          ??
          when?id=2?then?into?insert_test02?values(id)
          ??
          when?id=3?then?into?insert_test03?values(id)
          select?id?from?insert_test_case

          --3 rows inserted
          insert?all
          ??
          when?id=1?then?into?insert_test01?values(id)
          ??
          when?id=2?then?into?insert_test02?values(id)
          ??
          when?id=3?then?into?insert_test03?values(id)
          select?id?from?insert_test_case


          --1 rows inserted
          insert?first
          ??
          when?id=1?then?into?insert_test01?values(id)
          ??
          when?id=1?then?into?insert_test02?values(id)
          ??
          when?id=1?then?into?insert_test03?values(id)
          select?id?from?insert_test_case

          --3 rows inserted
          insert?all
          ??
          when?id=1?then?into?insert_test01?values(id)
          ??
          when?id=1?then?into?insert_test02?values(id)
          ??
          when?id=1?then?into?insert_test03?values(id)
          select?id?from?insert_test_case
          posted on 2006-12-13 13:32 Jcat 閱讀(274) 評論(0)  編輯  收藏 所屬分類: Database
          主站蜘蛛池模板: 蕲春县| 额尔古纳市| 黑山县| 安陆市| 丹凤县| 西畴县| 叶城县| 静宁县| 竹北市| 张家川| 措美县| 东阿县| 金昌市| 营口市| 美姑县| 鄂尔多斯市| 永吉县| 新丰县| 辽宁省| 凭祥市| 宝清县| 霍林郭勒市| 甘孜| 霍山县| 乐业县| 江城| 昆山市| 内江市| 昌都县| 天津市| 延津县| 福建省| 嘉祥县| 河南省| 宁陵县| 青田县| 方正县| 辛集市| 册亨县| 浦江县| 康平县|