这是数据库布局的屏幕截图
答案 0 :(得分:0)
DELETE t1
FROM Table1 t1
JOIN Table2 t2 ON t1.ID = t2.ID;
DELETE Table1
答案 1 :(得分:0)
DELETE FROM table_name
WHERE condition;
在此语句中: __
首先,指定要从中删除数据的表。 其次,使用条件指定在WHERE子句中删除哪些行。如果该行符合条件,它将被删除。 注意,WHERE子句是可选的。如果省略WHERE子句,则DELETE语句将删除表中的所有行。
除了从表中删除数据之外,DELETE语句还返回删除的行数。
要使用单个DELETE语句从多个表中删除数据,请使用DELETE JOIN
语句,我们将在下一个教程中介绍。
要删除表中的所有行而不需要知道删除了多少行,应使用TRUNCATE TABLE语句来获得更好的性能。
对于具有外键约束的表,当您从父表中删除行时,将使用ON DELETE CASCADE选项自动删除子表中的行。
MySQL DELETE示例 我们将使用示例数据库中的employees表进行演示。
MySQL删除-员工表
请注意,一旦删除数据,数据就消失了。因此,在下一节中执行DELETE语句之前,应该备份数据库。 假设您要删除办公室号码为4的员工,请使用带有WHERE子句的DELETE语句作为以下查询:
DELETE FROM employees
WHERE
officeCode = 4;
要从employees表中删除所有行,请使用不带WHERE子句的DELETE语句,如下所示:
DELETE FROM employees;
employees表中的所有行均已删除。
MySQL DELETE和LIMIT子句 如果要限制要删除的行数,请使用LIMIT子句,如下所示:
DELETE FROM table
LIMIT row_count;
请注意,表中行的顺序未指定,因此,当您使用LIMIT子句时,应始终使用ORDER BY子句。
DELETE FROM table_name
ORDER BY c1, c2, ...
LIMIT row_count;
请考虑示例数据库中的以下客户表:
例如,以下语句按客户名称的字母顺序对客户进行排序,并删除前10位客户:
DELETE FROM customers
ORDER BY customerName
LIMIT 10;
类似地,以下DELETE语句选择法国的客户,按信用额度升序对它们进行排序,并删除前5个客户: __
DELETE FROM customers
WHERE country = 'France'
ORDER BY creditLimit
LIMIT 5;