MySQL精讲之二:DML数据操作语句

文 / @WordPress主题

MySQL是一个关系型数据库管理系统,也是一个广泛使用的开源数据库服务器。在MySQL中,数据操作语言(DML)有三种基本操作:插入、修改和删除。

一、插入

MySQL中有两种插入方式。

方式一:INSERT INTO 表名 (列名, ...) VALUES(值1, ...);

方式二:INSERT INTO 表名 SET 列名=值, 列名=值, ...;

插入的值的类型要与列的类型一致或兼容。MySQL支持插入多行和子查询。

二、修改

MySQL中可以修改单表或多表的记录。

修改单表的记录用语句:UPDATE 表名 SET 列=新值, 列=新值, ... WHERE 筛选条件;

修改多表的记录用语句:UPDATE 表1别名 [INNER|LEFT|RIGHT] JOIN 表2别名 ON 连接条件 SET 列=新值, 列=新值, ... WHERE 筛选条件;

三、删除

MySQL中可以删除单表或多表的记录。

删除单表的记录用语句:DELETE FROM 表名 WHERE 筛选条件;

删除多表的记录用语句:DELETE 表1别名, 表2别名 FROM 表1别名 INNER|LEFT|RIGHT JOIN 表2别名 ON 连接条件 WHERE 筛选条件;

清空单表用语句:TRUNCATE TABLE 表名;

TRUNCATE和DELETE的区别在于truncate是直接删除表中的所有记录,然后将自增长的值从1开始,而Delete是删除表中满足条件的记录,不删除表本身,同时会返回影响的行数。

四、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、查看my_employees表的结构:

DESC my_employees

3、向my_employees表插入以下数据:

方式一: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、向users表插入以下数据:

INSERT INTO users VALUE(1,‘Rpatel’,10),(2,‘Bdancs’,10),(3,‘Bbiri’,20),(4,‘Cnewman’,30),(5,‘Aropebur’,40);

5、将id为3的员工的Last_name改为drelxer:

UPDATE my_employees SET Last_name=‘drelxer’ WHERE id=3;

6、将Salary小于900的员工的Salary改为1000:

UPDATE my_employees SET Salary=1000 WHERE Salary<900;

7、删除userid为‘Bbiri’的用户和他的员工信息:

DELETE u, e FROM users u JOIN my_employees e ON u.userid=e.userid WHERE u.userid=‘Bbiri’;

8、删除my_employees和users表中的所有记录:

DELETE FROM my_employees;
DELETE FROM users;

9、查看my_employees和users表中的所有记录:

SELECT * FROM my_employees;
SELECT * FROM users;

10、清空my_employees表:

TRUNCATE TABLE my_employees;

以上就是MySQL精讲之二:DML数据操作语句的详细内容。学习DML语言的增删改是数据库基础重要内容之一,做好这方面的基础知识,对于我们使用数据库会有更大的帮助。

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。