共计 2924 个字符,预计需要花费 8 分钟才能阅读完成。
自动写代码机器人,免费开通
丸趣 TV 小编给大家分享一下 MySQL 中 DML 数据操作语句有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
文章目录
一、插入 insert
二、修改 update
三、删除 delete/truncate
四、DML 语句练习题
一、插入 insert
方式一:insert into 表名 (列名,…) values(值 1,…);
方式二:insert into 表名 set 列名 = 值, 列名 = 值 …
比较是否支持插入多行是否支持子查询方式一√×方式二√×
【插入方式一】# 1. 插入的值的类型要与列的类型一致或兼容 INSERT INTO beauty(id,NAME,sex,borndate,phone,photo,boyfriend_id)VALUE(13, 双笙 , 女 , 1999-02-15 , 13868666666 ,NULL,2);# 2. 列的顺序可以调换 INSERT INTO beauty(NAME,id,sex,borndate,phone,photo,boyfriend_id)VALUE(徐婕 ,14, 女 , 1999-02-16 , 13868666661 ,NULL,2);# 3. 可以省略列名, 列的顺序和表中列的顺序一致 INSERT INTO beautyVALUE(16, 金克斯 , 女 , 2000-02-16 , 13868666661 ,NULL,2);# 4. 支持子查询 INSERT INTO beauty(id,NAME,phone)SELECT id,boyname, 110 FROM boys WHERE id # 本例需将 beauty 表的主键删除 ---------------------------------------------------------------【插入方式二】INSERT INTO beauty SET id=19,NAME= 花花 ,phone= 666
二、修改 update
1、修改单表的记录语法:
update 表名
set 列 = 新值, 列 = 新值,…
where 筛选条件;
执行顺序:update where set
2、修改多表的记录语法:
update 表 1 别名
[inner|left|right] join 表 2 别名
on 连接条件
set 列 = 新值, 列 = 新值,…
where 筛选条件;
【修改单表的记录】# 修改 beautty 表中姓周的女生电话为 15888888888UPDATE beautySET phone= 15888888888 WHERE NAME LIKE % 周 %【修改多表的记录】# 将张无忌的女朋友的电话号改为 2333UPDATE boys b1JOIN beauty b2
ON b1.id=b2.boyfriend_idSET b2.phone= 2333 WHERE b1.boyName= 张无忌
三、删除 delete/truncate
delete
单表删除:delete from 表名 where 筛选条件
多表删除:
delete 表 1 别名, 表 2 别名
from 表 1 别名
inner|left|right join 表 2 别名 on 连接条件
where 筛选条件;
truncate
清空单表:truncate table 表名;
注意:truncate 删除没有返回值,delete 删除有返回值。
比较是否可以加 where 条件是否可以回滚是否有返回值效率表中有自增长列时 delete√√√一般用 delete 删除,再插入数据,自增长的值从断点开始 truncate×××略高于 delete 用 truncate 删除,再插入数据,自增长的值从 1 开始
【delete】# 1. 单表删除 # 删除以 9 结尾的女生信息 DELETE FROM beauty WHERE phone LIKE %9 # 2. 多表删除 # 删除黄晓明的信息以及他女朋友的信息 DELETE b1,b2FROM beauty b1INNER JOIN boys b2ON b1.boyfriend_id=b2.idWHERE b2.boyName= 黄晓明【truncate】# 仅支持单表删除全部数据 TRUNCATE TABLE boys;
四、DML 语句练习题
学习了 DML 语言语句的增删改,尝试完成下面的习题:
答案:
1、执行下面的 sql 语句
CREATE TABLE my_employees(
Id INT(10),
First_name VARCHAR(10),
Last_name VARCHAR(10),
Userid VARCHAR(10),
Salary DOUBLE(10,2)
);
CREATE TABLE users(
id INT,
userid VARCHAR(10),
department_id INT
);
2.
DESC my_employees
3.
方式一:
INSERT INTO my_employees
VALUES(1,‘patel’,‘Ralph’,‘Rpatel’,895),
(2,‘Dancs’,‘Betty’,‘Bdancs’,860),
(3,‘Biri’,‘Ben’,‘Bbiri’,1100),
(4,‘Newman’,‘Chad’,‘Cnewman’,750),
(5,‘Ropeburn’,‘Audrey’,‘Aropebur’,1550);
TRUNCATE TABLE my_employees;
方式一:
INSERT INTO my_employees
SELECT 1,‘patel’,‘Ralph’,‘Rpatel’,895 UNION
SELECT 2,‘Dancs’,‘Betty’,‘Bdancs’,860 UNION
SELECT 3,‘Biri’,‘Ben’,‘Bbiri’,1100 UNION
SELECT 4,‘Newman’,‘Chad’,‘Cnewman’,750 UNION
SELECT 5,‘Ropeburn’,‘Audrey’,‘Aropebur’,1550;
4.
INSERT INTO users
VALUE(1,‘Rpatel’,10),
(2,‘Bdancs’,10),
(3,‘Bbiri’,20),
(4,‘Cnewman’,30),
(5,‘Aropebur’,40);
5.
UPDATE my_employees
SET Last_name=‘drelxer’
WHERE id=3;
6.
UPDATE my_employees
SET salary=1000
WHERE salary
7.
DELETE u,e
FROM users u
JOIN my_employees e ON u.userid=e.userid
WHERE u.userid=‘Bbiri’;
8.
DELETE FROM my_employees;
DELETE FROM users;
9.
SELECT * FROM my_employees;
SELECT * FROM users;
10.
TRUNCATE TABLE my_employees;
以上是“MySQL 中 DML 数据操作语句有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!
向 AI 问一下细节