Heim >Datenbank >MySQL-Tutorial >MySQL-Vorlesung 2: DML-Datenoperationsanweisungen
Kostenlose Lernempfehlung: MySQL-Video-Tutorial
Artikelverzeichnis
1.
Methode 1: Werte (Wert 1,...) in den Tabellennamen (Spaltenname,...) einfügen
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删除,再插入数据,自增长的值从断点开始 |
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语句练习题
2. Ändern Sie die Datensatzsyntax einer einzelnen Tabelle:学习了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_employees3.
方式一:
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 salary7.
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.
Methode Zweitens:insert into table name set columns name=value, columns name=value...
rrreee
Compare Ob es das Einfügen mehrerer Zeilen unterstütztOb es Unterabfragen unterstützt Methode 1 √ × tbody > Methode 2 √ ×
rrreee🎜🎜3. Löschen/löschen🎜🎜🎜🎜löschen🎜🎜🎜Einzelne Tabelle Löschung:
update table name
set columns=new value, columns =neuer Wert,...
wo Filterbedingungen;
Ausführungsreihenfolge:aktualisieren > wo > mehrerer Tabellen:
Alias für Tabelle 1 aktualisieren
[inner|left|right] Alias für Tabelle 2 verbinden
bei Join-Bedingung
set Column=neuer Wert, Spalte = neuer Wert,...
wo Filterbedingung;
aus Tabellenname löschen, wobei Filterbedingungen gelten
🎜🎜Löschung mehrerer Tabellen:🎜Lösche Alias für Tabelle 1, Alias für Tabelle 2
🎜aus Alias für Tabelle 1
🎜 inner|left|right Tabelle 2 Alias bei Verbindungsbedingung verbinden
🎜wo Filterbedingung;
🎜🎜🎜truncate🎜🎜🎜Einzelne Tabelle löschen: Tabellennamen abschneiden ;
🎜🎜Hinweis: Es gibt keinen Rückgabewert für das Löschen abschneiden, und es gibt einen Rückgabewert für das Löschen löschen.
🎜Vergleich | Ob die Where-Bedingung hinzugefügt werden kann | Ob sie zurückgesetzt werden kann | Gibt es einen Rückgabewert? | Effizienz | Wenn die Tabelle automatisch wachsende Spalten enthält |
---|---|---|---|---|---|
delete | √ | √ | √ | Im Allgemeinen | verwende delete Um Daten zu löschen, fügen Sie sie dann automatisch ein. Der Wert beginnt am Haltepunkt |
truncate | × | × | × | Etwas höher als löschenVerwenden Sie „Truncate“ zum Löschen und fügen Sie dann Daten ein. Der sich selbst erhöhende Wert beginnt bei 1 |
1. Führen Sie die folgende SQL-Anweisung aus
🎜 CREATE TABLE my_employees(🎜 Id INT(10),🎜 Vorname VARCHAR(10),🎜 Nachname VARCHAR(10),🎜 Benutzer-ID VARCHAR(10),🎜 Gehalt DOUBLE(10,2)🎜 );🎜 CREATE TABLE Benutzer(🎜 id INT,🎜 Benutzer-ID VARCHAR(10),🎜 Abteilungs-ID INT🎜 );🎜 2.
🎜 DESC my_employees🎜3.
🎜 Methode 1:🎜 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;🎜 Methode 1:🎜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 Benutzer🎜 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. code>🎜 UPDATE my_employees🎜 SET Gehalt=1000🎜 WHERE Gehalt 7.
🎜 LÖSCHEN Sie u,e🎜 VON den Benutzern u🎜 JOIN my_employees e ON u.userid=e.userid🎜 WHERE u .userid='Bbiri';🎜8.
🎜 LÖSCHEN VON my_employees;🎜 LÖSCHEN VON Benutzern;🎜9.
🎜 SELECT * FROM my_employees;🎜 SELECT * FROM users;🎜 10.
🎜 TRUNCATE TABLE my_employees;🎜🎜🎜🎜🎜Mehr Weitere verwandte kostenlose Lernempfehlungen: 🎜🎜🎜MySQL-Tutorial🎜🎜🎜(Video)🎜🎜🎜Das obige ist der detaillierte Inhalt vonMySQL-Vorlesung 2: DML-Datenoperationsanweisungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!