免費學習推薦:mysql影片教學
文章目錄
一、插入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<p><strong>二、修改update</strong></p><p>1、修改單表的記錄語法:</p><p><code>update 表格名稱</code><br><code>#set 欄位=新值,列=新值,...</code><br><code>where 篩選條件;</code></p><p>執行順序:<code>update > where > ; set</code></p><p>2、修改多表的記錄語法:<br><code>update 表1 別名</code><br><code>[inner|left|right] join 表2 別名</code><br><code>on 連線條件</code><br><code>set 欄位=新值,列=新值,...</code><br><code>where 篩選條件;</code></p><pre class="brush:php;toolbar:false">【修改单表的记录】# 修改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刪除,再插入數據,自增長的值從斷點開始 | |
× | × | × | #略高於delete | 用truncate刪除,再插入數據,自增長的值從1開始 |
四、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教學(影片) #
以上是MySQL精講之二:DML資料操作語句的詳細內容。更多資訊請關注PHP中文網其他相關文章!