概述
insert into是mysql中最常用的插入语句,通过 INSERT INTO SELECT 语句从一个表复制数据,然后把数据插入到一个已存在的表中,目标表中任何已存在的行都不会受影响。
今天我们就来说说insert into的作用和使用方法。
1、向原表中某些字段中插入一条记录。
语法:insert into +表名(表中的字段,,)value(字段所对应的记录,,);
mysql> select * from joke;
+------+-----------+------ -+------+
| gid | name | sex | age |
+------+-----------+------ -+------+
| 3 | xiaowang | male | 22 |
| 3 | xiaowang | male | 22 |
| 3 | xiaowang | male | 22 |
| 3 | xiaozhang | female | 22 |
+------+-----------+---- ---+------+
mysql> insert into joke (gid,name)value(0,"joker");
mysql> select * from joke;
+------+-----------+------ -+------+
| gid | name | sex | age |
+------+-----------+------ -+------+
| 3 | xiaowang | male | 22 |
| 3 | xiaowang | male | 22 |
| 3 | xiaowang | male | 22 |
| 3 | xiaozhang | female | 22 |
| 0 | joker | NULL | NULL |
+------+-----------+------ -+------+
2、向原表的字段中插入多条记录的方法一。
语法:insert into +表名(表中的字段,,)values(字段所对应的记录,,)(字段所对应的记录);
mysql> insert into joke (gid,name)values(0,"joker"),(1,"jhj");
mysql> select * from joke;
+------+-----------+------ -+------+
| gid | name | sex | age |
+------+-----------+------ -+------+
| 3 | xiaowang | male | 22 |
| 3 | xiaowang | male | 22 |
| 3 | xiaowang | male | 22 |
| 3 | xiaozhang | female | 22 |
| 0 | joker | NULL | NULL |
| 0 | joker | NULL | NULL |
| 1 | jhj | NULL | NULL |
+------+-----------+------ -+------+
3、向原表的字段中插入多条记录的方法二。
语法:insert into+表名 select v1,v2 union all
select v1,v2;
mysql> insert into book select "abc","bdd" union all
-> select "add","dsf";
mysql> select * from book;
+------+------+
| a | b |
+------+------+
| abc | bdd |
| add | dsf |
+------+------+
如果插入的记录是数字的话要在数字的逗号后面加n:
mysql> insert into Student select 1,N'刘一',18,N'男' union all
-> select 2,N'钱二',19,N'女';
mysql> select * from student;
+------+--------+------+------+
| s | sname | sage | ssex |
+------+--------+------+------+
| 1 | 刘一 | 18 | 男 |
| 2 | 钱二 | 19 | 女 |
| 3 | 张三 | 17 | 男 |
| 4 | 李四 | 18 | 女 |
| 5 | 王五 | 17 | 男 |
| 6 | 赵六 | 19 | 女 |
| 1 | 刘一 | 18 | 男 |
| 2 | 钱二 | 19 | 女 |
+------+-- -----+------+------+
4、复制旧表的信息到新表(假设两个表的表结构一样)
语法:insert into+新表+select语句;
mysql> insert into q1 select * from 4inall where sage=18;
mysql> select * from q1;
+--------+------+--------+------+--------+------+------+-------+
| sname | sage | tname | t | cname | s | c | score |
+--------+------+--------+------+--------+------+------+-------+
| 刘一 | 18 | 叶平 | 1 | 语文 | 1 | 1 | 56 |
| 钱二 | 19 | 叶平 | 1 | 语文 | 2 | 1 | 79 |
| 张三 | 17 | 叶平 | 1 | 语文 | 3 | 1 | 91 |
| 王五 | 17 | 叶平 | 1 | 语文 | 5 | 1 | 46 |
| 赵六 | 19 | 叶平 | 1 | 语文 | 6 | 1 | 35 |
| abc | NULL | NULL | NULL | NULL | NULL | NULL | NULL |
| 刘一 | 18 | 叶平 | 1 | 语文 | 1 | 1 | 56 |
| 刘一 | 18 | 贺高 | 2 | 数学 | 1 | 2 | 78 |
| 刘一 | 18 | 杨艳 | 3 | 英语 | 1 | 3 | 67 |
| 刘一 | 18 | 周磊 | 4 | 物理 | 1 | 4 | 58 |
| 李四 | 18 | 贺高 | 2 | 数学 | 4 | 2 | 88 |
| 李四 | 18 | 杨艳 | 3 | 英语 | 4 | 3 | 90 |
| 李四 | 18 | 周磊 | 4 | 物理 | 4 | 4 | 93 |
+--------+------+--------+------+--------+------+------+-------+
5、复制旧表信息到新表(假设两个的表的表结构不一样)。
语法:insert into+新表+字段名+select语句;
mysql> insert into q1 (sname)select 4inall.s from 4inall where t=2;
mysql> select * from q1;
+--------+------+--------+------+--------+------+------+-------+
| sname | sage | tname | t | cname | s | c | score |
+--------+------+--------+------+--------+------+------+-------+
| 刘一 | 18 | 叶平 | 1 | 语文 | 1 | 1 | 56 |
| 钱二 | 19 | 叶平 | 1 | 语文 | 2 | 1 | 79 |
| 张三 | 17 | 叶平 | 1 | 语文 | 3 | 1 | 91 |
| 王五 | 17 | 叶平 | 1 | 语文 | 5 | 1 | 46 |
| 赵六 | 19 | 叶平 | 1 | 语文 | 6 | 1 | 35 |
| abc | NULL | NULL | NULL | NULL | NULL | NULL | NULL |
| 刘一 | 18 | 叶平 | 1 | 语文 | 1 | 1 | 56 |
| 刘一 | 18 | 贺高 | 2 | 数学 | 1 | 2 | 78 |
| 刘一 | 18 | 杨艳 | 3 | 英语 | 1 | 3 | 67 |
| 刘一 | 18 | 周磊 | 4 | 物理 | 1 | 4 | 58 |
| 李四 | 18 | 贺高 | 2 | 数学 | 4 | 2 | 88 |
| 李四 | 18 | 杨艳 | 3 | 英语 | 4 | 3 | 90 |
| 李四 | 18 | 周磊 | 4 | 物理 | 4 | 4 | 93 |
| 1 | NULL | NULL | NULL | NULL | NULL | NULL | NULL |
| 2 | NULL | NULL | NULL | NULL | NULL | NULL | NULL |
| 3 | NULL | NULL | NULL | NULL | NULL | NULL | NULL |
| 4 | NULL | NULL | NULL | NULL | NULL | NULL | NULL |
| 6 | NULL | NULL | NULL | NULL | NULL | NULL | NULL |
+--------+------+--------+------+--------+------+------+-------+
最后
以上就是精明西装为你收集整理的mysql中insert into含义_MySQL中insert into语句的用法的全部内容,希望文章能够帮你解决mysql中insert into含义_MySQL中insert into语句的用法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复