📅  最后修改于: 2023-12-03 15:22:42.619000             🧑  作者: Mango
当我们需要删除 SQL 表中的某些行时,我们可以使用 DELETE
语句来完成这个任务。下面是一个例子:
DELETE FROM table_name WHERE condition;
DELETE
关键词指定了我们要删除数据的操作类型,table_name
指定了我们要删除数据的表名。
WHERE
关键词用来指定我们要删除哪些数据。condition
决定了要删除哪些行。例如,如果我们想删除表 students
中年龄大于 18 岁的所有学生,那么我们可以这样写:
DELETE FROM students WHERE age > 18;
这将删除 students
表中所有满足 age > 18
条件的行。
如果我们只想删除表中的一行,那么我们需要至少指定一个唯一标识符,否则数据库将删除表中所有符合条件的行。例如,如果我们想删除 students
表中名字为 "Bob" 的行,那么我们可以这样写:
DELETE FROM students WHERE name = 'Bob';
这将删除 students
表中所有名字为 "Bob" 的行。请注意,如果有多个名字为 "Bob" 的行,它们都会被删除。
如果我们想同时删除多个符合条件的行,我们可以使用多个条件进行过滤。例如,如果我们想删除 students
表中年龄为 18 岁且分数低于 60 分的学生,那么我们可以这样写:
DELETE FROM students WHERE age = 18 AND score < 60;
总结一下,当我们需要删除 SQL 表中的某些行时,可使用 DELETE
语句,使用 WHERE
关键字过滤我们要删除哪些数据。如果需要删除表中的一行,需要至少指定一个唯一标识符。
-- 删除 students 表中名字为 "Bob" 的行
DELETE FROM students WHERE name = 'Bob';
-- 删除 students 表中年龄为 18 岁且分数低于 60 分的学生
DELETE FROM students WHERE age = 18 AND score < 60;