zoukankan      html  css  js  c++  java
  • SQL INSERT INTO SELECT 语句用法及案例分析

    SQL INSERT INTO SELECT 语句


    通过 SQL,您可以从一个表复制信息到另一个表。

    INSERT INTO SELECT 语句从一个表复制数据,然后把数据插入到一个已存在的表中。


    SQL INSERT INTO SELECT 语句

    INSERT INTO SELECT 语句从一个表复制数据,然后把数据插入到一个已存在的表中。目标表中任何已存在的行都不会受影响。

    SQL INSERT INTO SELECT 语法

    我们可以从一个表中复制所有的列插入到另一个已存在的表中:

    INSERT INTO table2
    SELECT * FROM table1;

    或者我们可以只复制希望的列插入到另一个已存在的表中:

    INSERT INTO table2
    (column_name(s))
    SELECT column_name(s)
    FROM table1;

    演示数据库

    在本教程中,我们将使用 样本数据库。

    下面是选自 "Websites" 表的数据:

    +----+--------------+---------------------------+-------+---------+
    | id | name         | url                       | alexa | country |
    +----+--------------+---------------------------+-------+---------+
    | 1  | Google       | https://www.google.cm/    | 1     | USA     |
    | 2  | 淘宝          | https://www.taobao.com/   | 13    | CN      |
    | 3  | 菜鸟教程      | http://www.runoob.com/    | 4689  | CN      |
    | 4  | 微博          | http://weibo.com/         | 20    | CN      |
    | 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
    | 7  | stackoverflow | http://stackoverflow.com/ |   0 | IND     |
    +----+---------------+---------------------------+-------+---------+
    

    下面是 "apps" APP 的数据:

    mysql> SELECT * FROM apps;
    +----+------------+-------------------------+---------+
    | id | app_name   | url                     | country |
    +----+------------+-------------------------+---------+
    |  1 | QQ APP     | http://im.qq.com/       | CN      |
    |  2 | 微博 APP | http://weibo.com/       | CN      |
    |  3 | 淘宝 APP | https://www.taobao.com/ | CN      |
    +----+------------+-------------------------+---------+
    3 rows in set (0.00 sec)
    

    SQL INSERT INTO SELECT 实例

    复制 "apps" 中的数据插入到 "Websites" 中:

    实例

    INSERT INTO Websites (name, country)
    SELECT app_name, country FROM apps;

    只复 QQ 的 APP 到 "Websites" 中:

    实例

    INSERT INTO Websites (name, country)
    SELECT app_name, country FROM apps
    WHERE id=1;
  • 相关阅读:
    MySQL中redo日志
    MySQL中事务的分类
    MySQL中事务的概述ACID了解
    MySQL中UNSIGNED和ZEROFILL的介绍
    MySQL中死锁
    谈谈当前火热的“车联网”
    线性代数回顾:矩阵运算
    Spark作业调度阶段分析
    Spark——共享变量
    Spark编译与打包
  • 原文地址:https://www.cnblogs.com/peijz/p/12453768.html
Copyright © 2011-2022 走看看