mysql使用insert into select插入查出的数据

 更新时间:2023年12月08日 16:38:55   作者:hanjq_code  
这篇文章主要介绍了mysql使用insert into select插入查出的数据方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

mysql insert into select插入查出的数据

#此处注意括号中的字段不能是字符串也就是不能带引号
INSERT INTO bx_well_device_manager ( device_manager_id, device_id, create_uid, modify_uid ) SELECT
    device_id AS device_manager_id,
    device_id,
    create_uid,
    modify_uid 
FROM
	bx_well_device 
WHERE
	del_flag = '0'

mysql查询:select into 和 insert into select区别

Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。

经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 INSERT INTO SELECT 表复制语句了。

1.INSERT INTO SELECT语句

语句形式为:

Insert into Table2(field1,field2,...) select value1,value2,... from Table1

要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量。

2.SELECT INTO FROM语句

语句形式为:

SELECT vale1, value2 into Table2 from Table1

要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2中。

3.存储过程中使用SELECT INTO FROM

CREATE  PROCEDURE get_address(
    ->      IN p_playerno SMALLINT,
    ->      OUT p_street VARCHAR(30),
    ->      OUT p_houseno VARCHAR(4),
    ->      OUT p_town VARCHAR(30),
    ->      OUT p_postcode VARCHAR(6))  
    ->  BEGIN    
    ->      SELECT street, houseno, town, postcode
    ->      INTO p_street, p_houseno, p_town, p_postcode
    ->      FROM PLAYERS
    ->      WHERE playerno = p_playerno;           
    ->  END

在使用SELECT …INTO语句时,变量名和数据表中的字段名不能相同,否则会出错。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • MySQL中InnoDB存储引擎的锁的基本使用教程

    MySQL中InnoDB存储引擎的锁的基本使用教程

    这篇文章主要介绍了MySQL中InnoDB存储引擎的锁的基本概念,是MySQL入门学习中的基础知识,需要的朋友可以参考下
    2015-11-11
  • MySQL表的四种分区类型详细介绍

    MySQL表的四种分区类型详细介绍

    这篇文章主要介绍了MySQL表的四种分区类型,RANGE分区,LIST分区,HASH分区,KEY分区,需要的朋友可以参考下
    2024-03-03
  • 超越MySQL 对流行数据库进行分支的知识小结

    超越MySQL 对流行数据库进行分支的知识小结

    尽管MySQL是最受欢迎的程序之一,但是许多开发人员认为有必要将其拆分成其他项目,并且每个分支项目都有自己的专长。该需求,以及 Oracle 对核心产品增长缓慢的担忧,导致出现了许多开发人员感兴趣的子项目和分支
    2012-01-01
  • MySQL之初始化数据详解

    MySQL之初始化数据详解

    本文介绍了MySQL命令行的基本操作,包括列出数据库、创建数据库、使用数据库、查看表、删除数据库、退出MySQL等,还详细介绍了数据库表的结构和属性,以及如何创建和初始化测试数据
    2025-01-01
  • MySQL 迁移后无法快速导数据问题解决

    MySQL 迁移后无法快速导数据问题解决

    这篇文章主要为大家介绍了MySQL 迁移后无法快速导数据问题解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • 用批处理实现自动备份和清理mysql数据库的代码

    用批处理实现自动备份和清理mysql数据库的代码

    有网友问我在win2003下如何自动备份MySQL数据库,既然是自动备份,那肯定得写脚本,当然我们也可以利用软件实现
    2013-08-08
  • MySql 8.0及对应驱动包匹配的注意点说明

    MySql 8.0及对应驱动包匹配的注意点说明

    这篇文章主要介绍了MySql 8.0及对应驱动包匹配的注意点说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • SQL题目分析之计算用户的平均次日留存率

    SQL题目分析之计算用户的平均次日留存率

    留存率是指在特定时间段内,仍然继续使用某项产品或服务的用户占用户总数的百分比,这篇文章主要介绍了SQL题目分析之计算用户的平均次日留存率的相关资料,需要的朋友可以参考下
    2026-04-04
  • MySQL事务与隔离级别的使用基础理论

    MySQL事务与隔离级别的使用基础理论

    这篇文章主要介绍了MySQL事务的隔离级别详情,事务隔离级别越高,为避免冲突所花费的性能也就越多,即效率低。在“可重复读”级别,实际上可以解决部分的虚读问题,但是不能防止update更新产生的虚读问题,要禁止虚读产生,还是需要设置串行化隔离级别
    2023-02-02
  • 随机生成八位优惠码并保存至Mysql数据库

    随机生成八位优惠码并保存至Mysql数据库

    这篇文章主要介绍了随机生成八位优惠码并保存至Mysql数据库的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-02-02

最新评论