溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MySQL中DML數(shù)據(jù)操作語句有哪些

發(fā)布時間:2021-02-23 13:28:01 來源:億速云 閱讀:489 作者:小新 欄目:MySQL數(shù)據(jù)庫

小編給大家分享一下MySQL中DML數(shù)據(jù)操作語句有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

文章目錄

  • 一、插入insert

  • 二、修改update

  • 三、刪除delete/truncate

  • 四、DML語句練習(xí)題


一、插入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.列的順序可以調(diào)換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<3; # 本例需將beauty表的主鍵刪除---------------------------------------------------------------【插入方式二】INSERT INTO beauty SET id=19,NAME='花花',phone='666';

二、修改update

1、修改單表的記錄語法:

update 表名
set 列=新值,列=新值,...
where 篩選條件;

執(zhí)行順序: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刪除,再插入數(shù)據(jù),自增長的值從斷點(diǎn)開始
truncate×××略高于delete用truncate刪除,再插入數(shù)據(jù),自增長的值從1開始
【delete】# 1.單表刪除# 刪除以9結(jié)尾的女生信息DELETE FROM beauty WHERE phone LIKE '%9';# 2.多表刪除# 刪除黃曉明的信息以及他女朋友的信息DELETE b1,b2FROM beauty b1INNER JOIN boys b2ON b1.boyfriend_id=b2.idWHERE b2.boyName='黃曉明';【truncate】# 僅支持單表刪除全部數(shù)據(jù)TRUNCATE TABLE boys;

四、DML語句練習(xí)題

學(xué)習(xí)了DML語言語句的增刪改,嘗試完成下面的習(xí)題:MySQL中DML數(shù)據(jù)操作語句有哪些
答案:
1、執(zhí)行下面的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<900;
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數(shù)據(jù)操作語句有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI