zoukankan      html  css  js  c++  java
  • [SQL Tricks] 一条SQL语句向一张表里插入多条记录 (Multitable inserts in 9i)

    Oracle 9i加入了支持一次向多个表同时插入数据的SQL语句 --- INSERT ALL|FIRST INTO…SELECT…FROM…

     
    INSERT ALL|FIRST
       [WHEN condition THEN] INTO target [VALUES]
       [WHEN condition THEN] INTO target [VALUES]
       ...
       [ELSE] INTO target [VALUES]
    SELECT ...
    FROM   source_query;
     
     
    关于 INSERT ALL/FIRST, Adrian Billington在他的文章中有详细介绍。
     
    
    

    这里主要讲可以用INSERT ALL把如下多条SQL语句放到一条SQL语句中来执行,

     
    SQL> INSERT INTO t(id, val) values (1, 'Y'); 
    1 row created. 
    SQL> INSERT INTO t(id, val) values (2, 'Y'); 
    1 row created. 
    SQL> INSERT INTO t(id, val) values (3, 'Y'); 
    1 row created. 
    SQL> INSERT INTO t(id, val) values (4, 'Y'); 
    1 row created. 

     

     

    用INSERT ALL转换 ===>

     
    SQL> INSERT ALL
      2    INTO t(id, val) VALUES(1, 'Y')
      3    INTO t(id, val) VALUES(2, 'Y')
      4    INTO t(id, val) VALUES(3, 'Y')
      5    INTO t(id, val) VALUES(4, 'Y')
      6  SELECT NULL FROM dual;
     
    4 rows created.
     
    SQL>
  • 相关阅读:
    Metaclass
    Pydantic
    Alembic
    SQLAlchemy
    django2:路由path语法
    Django 学习笔记之模型高级用法
    Flask拾遗总汇1
    Flask中before_request与after_request使用
    Flask 中字典数据返回(jsonify)
    浅析django的abstract,proxy, managed
  • 原文地址:https://www.cnblogs.com/fangwenyu/p/1639610.html
Copyright © 2011-2022 走看看