涉及命令的问题

一.truncate与delete的区别是什么?
TRUNCATE TABLE:删除内容、不删除定义、释放空间。
DELETE TABLE:删除内容、不删除定义,释放空间。
DROPTABLE:删除内容和定义,释放空间。

1.truncate table 表名,只能删除表中全部数据。 delete from 表名 where ….,可以删除表中全部数据,也可以删除部分数据。

2.delete from 记录是一条条删的,所删除的每行记录都会进日志, 而 truncate 一次性删掉整个页,因此日志里面只记录页释放.

3.Truncate 删除后,不能回滚。Delete 可以回滚

4.Truncate 的执行速度比 Delete 快。

5.Delete 执行后,删除的数据占用的存储空间还在,还可以恢复数据。Truncate 删除的数据占用的存储空间不在,不可以恢复数据

二.怎么新加一行记录、怎么添加一个列字段,修改列
插入一行数据:
insert into stu(stuName,stuAge,stuSex) values(‘张三’,’20’,’男’)

增加列: 1. alter table tableName add (column)columnName varchar(30) (一定 要有数据类型!!!)

删除列: 1. alter table tableName drop (column) columnName

三 .select Count (*)和 Select Count(数 字 )以 及 Select Count(column)区别
count(*) 跟 count(1) 的结果一样,返回记录的总行数,都包括 对 NULL 的统计,而 count(column) 是不包括 NULL 的统计。

.EXISTS 关键字的使用方法
EXISTS 关键字表示存在。使用 EXISTS 关键字时,内层查询语句不返回查询的记录,而是返回一个真假值
如果内层查询语句查询到符合条件的记录,就返回一个真值(true),否则,将返回一个假值(false):
 当返回的值为 true 时,外层查询语句将进行查询。
 当返回的值为 false 时,外层查询语句将不进行查询或者查询不出任何记录。

SELECT * FROM employee WHERE 
        NOT EXISTS 
        (SELECT d_name FROM department WHERE d_id=1003);

猜你喜欢

转载自blog.csdn.net/jcsyl_mshot/article/details/80219363