详解DBMS中delete命令的使用

删除命令是一种数据操作命令,用于从表中删除记录。可以一次性删除所有记录,也可以根据条件删除一组记录。

从表中删除特定行

要删除表中的特定行,我们需要提及 where 条件。根据条件,从表中删除该特定行。

语法如下 -

delete from tablename where condition

例如,

Delete from employee where name=’sneha’;

示例

下面给出的是从表中删除特定行的示例 -

create table employee(ename varchar(30),department varchar(20), age number(30), salary number(20));

insert into employee values('ram','projectmanager',40,50000);

insert into employee values('priya','assistant director',45,45000);

insert into employee values('hari','developer',46,30000);

select * from employee;

输出结果

您将获得以下输出 -

ram|projectmanager|40|50000

priya|assistant director|45|45000

hari|developer|46|30000

现在,使用下面给出的程序 -

示例

delete from employee where ename='priya';

select * from employee;

输出结果

您将获得以下输出 -

ram|projectmanager|40|50000

hari|developer|46|30000

根据条件删除数据

例如,

delete from employee where age>45;

示例

下面给出的是删除年龄大于 45 岁的员工行的示例,其余的将保留在数据库中 -

create table employee(ename varchar(30),department varchar(20), age number(30), salary number(20));

insert into employee values('ram','projectmanager',40,50000);

insert into employee values('priya','assistant director',45,45000);

insert into employee values('hari','developer',46,30000);

select * from employee;

输出结果

您将获得以下输出 -

ram|projectmanager|40|50000

priya|assistant director|45|45000

hari|developer|46|30000

现在,使用下面给出的程序 -

delete from employee where age>45;

select * from employee;

输出结果

您将获得以下输出 -

ram|projectmanager|40|50000

priya|assistant director|45|45000

根据子查询的结果删除数据

也可以根据子查询的结果进行删除。

例如,

delete from employee where age in (select age from employee where age>45)

从表中删除所有行

如果我们想删除整个表,我们可以使用以下内容 -

delete from employee;

(or)

delete * from employee;

要从表中删除所有行,我们还可以使用 TRUNCATE 命令。

语法如下 -

TRUNCATE table tablename;

例如,

TRUNCATE table employee

TRUNCATE 从没有备份的表中删除所有行。

示例

下面给出的是从表中删除所有行的示例 -

create table employee(ename varchar(30),department varchar(20), age number(30), salary number(20));

insert into employee values('ram','projectmanager',40,50000);

insert into employee values('priya','assistant director',45,45000);

insert into employee values('hari','developer',46,30000);

delete from employee;

select * from employee;

输出结果

您将获得以下输出 -

no rows displayed

以上是 详解DBMS中delete命令的使用 的全部内容, 来源链接: utcz.com/z/311436.html

回到顶部