需求描述

  今天在看一本mysql的书籍,发现一个mysql中insert into好用的技巧,就是通过

  1条insert into语句,插入多行数据,而不是多个insert into语句。在此记录下。

测试过程

1.常规的通过多个insert into语句插入多行数据

create table tab_ts01(id int,num01 int);
insert into tab_ts01 values (1,2);
insert into tab_ts01 values (2,3);
insert into tab_ts01 values (5,55);
insert into tab_ts01 values (40,22);

执行过程

mysql> drop table if exists tab_ts01;
Query OK, 0 rows affected (0.08 sec) mysql> create table tab_ts01(id int,num01 int);
Query OK, 0 rows affected (0.03 sec) mysql> insert into tab_ts01 values (1,2);
Query OK, 1 row affected (0.02 sec) mysql> insert into tab_ts01 values (2,3);
Query OK, 1 row affected (0.01 sec) mysql> insert into tab_ts01 values (5,55);
Query OK, 1 row affected (0.01 sec) mysql> insert into tab_ts01 values (40,22);
Query OK, 1 row affected (0.01 sec) mysql> select * from tab_ts01;
+------+-------+
| id | num01 |
+------+-------+
| 1 | 2 |
| 2 | 3 |
| 5 | 55 |
| 40 | 22 |
+------+-------+
4 rows in set (0.00 sec)

2.通过一条insert into语句,插入多行值

drop table if exists tab_ts01;
create table tab_ts01(id int,num01 int);
insert into tab_ts01 values (1,2),(2,3),(5,55),(40,22);

执行过程

mysql> drop table if exists tab_ts01;
Query OK, 0 rows affected (0.01 sec) mysql> create table tab_ts01(id int,num01 int);
Query OK, 0 rows affected (0.12 sec) mysql> insert into tab_ts01 values (1,2),(2,3),(5,55),(40,22);
Query OK, 4 rows affected (0.01 sec)
Records: 4 Duplicates: 0 Warnings: 0 mysql> select * from tab_ts01;
+------+-------+
| id | num01 |
+------+-------+
| 1 | 2 |
| 2 | 3 |
| 5 | 55 |
| 40 | 22 |
+------+-------+
4 rows in set (0.00 sec)

备注:发现通过一条insert into语句能够达到与多个insert into语句同样的效果,而且更加的方便,可以作为一个小技巧。

文档创建时间:2018年3月21日15:02:39

mysql数据库中,通过一条insert into语句,同时插入多个值的更多相关文章

  1. Mysql数据库中CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP区别

    如图所示,mysql数据库中,当字段类型为timestamp时,如果默认值取CURRENT_TIMESTAMP,则在insert一条记录时,end_time的值自动设置为系统当前时间,如果勾选了 ON ...

  2. 从SQLSERVER/MYSQL数据库中随机取一条或者N条记录

    从SQLSERVER/MYSQL数据库中随机取一条或者N条记录 很多人都知道使用rand()函数但是怎麽使用可能不是每个人都知道 建立测试表 USE [sss] GO ,NAME ) DEFAULT ...

  3. mysql数据库中插入数据INSERT INTO SET的优势

    往mysql数据库中插入数据.以前常用 INSERT INTO 表名 (列名1,列名2…) VALUES(列值1,列值2); 如果在PHP程序中,就会写成如下示例(往商品库里增加商品) $sql = ...

  4. [MySQL]MySQL数据库中如何查询分组后每组中的最后一条记录?

    原文地址:https://codedefault.com/s/how-can-i-retrieve-the-last-record-in-each-group-mysql 问题描述 比如,在MySQL ...

  5. laravel如何从mysql数据库中随机抽取n条数据

    laravel如何从mysql数据库中随机抽取n条数据 一.总结 一句话总结: inRandomOrder():$userQuestions=UserQuestion::where($map)-> ...

  6. MySQL数据库中,将一个字段的值分割成多条数据显示

    本文主要记录如何在MySQL数据库中,将一个字符串分割成多条数据显示. 外键有时是以字符串的形式存储,例如 12,13,14 这种,如果以这种形式存储,则不能直接与其他表关联查询,此时就需要将该字段的 ...

  7. 保留mysql数据库中的最新1000条记录

    <?php mysql_connect("localhost","root","root");mysql_select_db(&quo ...

  8. Oracle数据库中实现mysql数据库中auto-increment功能

    在Mysql数据库中,想要实现一条数据的自增一功能(即插入此数据时填写null即可,系统自动+1),可直接在所在列使用语句auto-increment. id int primary key auto ...

  9. 如何将MongoDB数据库的数据迁移到MySQL数据库中

    FAQ v2.0终于上线了,断断续续忙了有2个多月.这个项目是我实践的第一个全栈的项目,从需求(后期有产品经理介入)到架构,再到设计(有征询设计师的意见).构建(前端.后台.数据库.服务器部署),也是 ...

随机推荐

  1. Vmware-虚拟机中ubuntu不能联网问题的解决——NAT方式

    设置虚拟机不能联网是很痛苦的,这里我就ubuntu的NAT上网问题就个人经验讲一下,其他的桥连接等没有使用就没有经验了. 1.查看/设置下NAT的网络 打开VMware Workstation, 点击 ...

  2. Linux下adb的配置

    进入当前用户主目录 yongdaimi@ubuntu:~$ cd ~ 打开.bashrc文件 yongdaimi@ubuntu:~$ vi .bashrc 在文件末尾添加下列代码 export ADB ...

  3. C/C++预定义宏

    编译器识别预定义的 ANSI/ISO C99 C 预处理宏,Microsoft C++ 实现将提供更多宏.这些预处理器宏不带参数,并且不能重新定义. ANSI 兼容的预定义宏 __FILE__,__L ...

  4. jQuery的使用说明

    jQuery是一款同prototype一样优秀js开发库类,特别是对css和XPath的支持,使我们写js变得更加方便!如果你不是个js高手又想写出优 秀的js效果,jQuery可以帮你达到目的!   ...

  5. 請問 localtime() 為什麼不會造成 memory leak?

    http://www.programmer-club.com.tw/ShowSameTitleN/vc/22380.html ************************************* ...

  6. jquery全部版本

    http://www.jb51.net/zt/jquerydown.htm 这个地方实时更新jquery版本

  7. logback日志模板与详解

    <pattern>的转换符说明: (这部分引用自http://aub.iteye.com/blog/1103685)转换符 作用 c {length } lo {length } logg ...

  8. ios UITextField文本框基本使用,以及所有代理方法的作用

    /* UITextField文本输入框 */ UITextField * textField = [[UITextField alloc]initWithFrame:CGRectMake(50, 50 ...

  9. C#多线程解决界面卡死问题的完美解决方案,BeginInvoke而不是委托delegate 转载

    问题描述:当我们的界面需要在程序运行中不断更新数据时,当一个textbox的数据需要变化时,为了让程序执行中不出现界面卡死的现像,最好的方法就是多线程来解决一个主线程来创建界面,使用一个子线程来执行程 ...

  10. 【分区助手】如何扩大C盘容量?

    问题:C盘容量太小,想通过缩小其他盘(比如本例的F盘)来扩大C盘. 工具:分区助手 步骤: 1.下好分区助手后打开(该软件建议装在C盘),选择左侧的[扩大分区导向]. 2.选择下面那个,要先缩小F盘扩 ...