• mysql 从一个表中查数据并插入另一个表实现方法


    mysql 从一个表中查数据并插入另一个表实现方法

    不管是在网站开发还是在应用程序开发中,我们经常会碰到需要将MySQL或MS SQLServer某个表的数据批量导入到另一个表的情况,甚至有时还需要指定导入字段。

    本文就将以MySQL数据库为例,介绍如何通过SQL命令行将某个表的所有数据或指定字段的数据,导入到目标表 中。此方法对于SQLServer数据库,也就是T-SQL来说,同样适用 。

    类别一、 如果两张张表(导出表和目标表)的字段一致,并且希望插入全部数据,可以用这种方法:

    INSERT INTO  目标表  SELECT  * FROM  来源表 ;

    例如,要将 articles 表插入到 newArticles 表中,则可以通过如下SQL语句实现:

    INSERT INTO  newArticles  SELECT  * FROM  articles ;

    类别二、 如果只希望导入指定字段,可以用这种方法:

    INSERT INTO  目标表 (字段1, 字段2, ...)  SELECT   字段1, 字段2, ...   FROM  来源表 ;

    INSERT INTO TPerson ( UserId, DepId )
    SELECT UserId,DepId FROM TUser WHERE 'Status' = 0;

    类别三:如果您需要只导入目标表中不存在的记录,可以使用这种方法:
      
    INSERT INTO 目标表  
     (字段1, 字段2, ...)  
     SELECT 字段1, 字段2, ...  
     FROM 来源表  
     WHERE not exists (select * from 目标表  
     where 目标表.比较字段 = 来源表.比较字段); 
     
     1>.插入多条记录:

    insert into t_users
    (userid)

    select userid
    from t_game_record
    where( not exists (select userid from t_users where t_game_record.userid=t_users.userid))


     
     2>.插入一条记录:
    insert into insertTest    
    (id, name)    
    SELECT 100, 'liudehua'    
    FROM dual    
    WHERE not exists (select * from insertTest    
    where insertTest.id = 100);


    版权声明:本文部分为CSDN博主「Tina_1202」的原创文章。
    原文链接:https://blog.csdn.net/Tina_1202/article/details/78999258

     部分转载自https://www.jb51.net/article/112917.htm;

  • 相关阅读:
    Hadoop2.x环境搭建
    HDFS序列化
    Hadoop2.x介绍
    eclipse(1)----ubuntu下的安装与配置
    hive与hbase
    mysql----启动报错
    序列化+protobuff+redis
    爬虫学习笔记(2)--创建scrapy项目&&css选择器
    日常随笔
    spark学习(2)--hadoop安装、配置
  • 原文地址:https://www.cnblogs.com/summerGraden/p/14789931.html
Copyright © 2020-2023  润新知