创建数据库和表的SQL语句

SQL常用语句:

 

CREATE DATABASE 库名; 创建数据库
DROP DATABASE 库名;  删除数据库
USE 库名;

 

(1) 数据记录筛选:

sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]"  ORDER BY 用于对结果集进行排序

sql="select * from 数据表 where 字段名 like '%字段值%' order by 字段名 [desc]"  LIKE 用于在 WHERE 子句中搜索列中的指定模式。

sql="select * from 数据表 where 字段名 not like '%字段值%' order by 字段名 [desc]"  NOT 用于在select数据时,查询不在哪一个数据范围的的记录

sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]"  TOP 用于规定要返回的记录的数目。

sql="select * from 数据表 where 字段名 in ('值1','值2','值3')"  IN 确定给定的值是否与子查询或列表中的值相匹配。

sql="select * from 数据表 where 字段名 between 值1 and 值2"  BETWEEN ... AND...  会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。

(2) 更新数据记录:

sql="update 数据表 set 字段名=字段值 where 条件表达式"

sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"

(3) 删除数据记录:

sql="delete from 数据表 where 条件表达式"

sql="delete from 数据表" (将数据表所有记录删除)

(4) 添加数据记录:

sql="insert into 数据表 (字段1,字段2,字段3 …) values (值1,值2,值3 …)"

sql="insert into 目标数据表 select * from 源数据表" (把源数据表的记录添加到目标数据表)

(5) 数据记录统计函数:

AVG(字段名) 得出一个表格栏平均值 

  SELECT AVG(column_name) FROM table_name

COUNT(*¦字段名) 对数据行数的统计或对某一栏有值的数据行数统计

  SELECT COUNT(column_name) FROM table_name

MAX(字段名) 取得一个表格栏最大的值

  SELECT MAX(column_name) FROM table_name

MIN(字段名) 取得一个表格栏最小的值

  SELECT MIN(column_name) FROM table_name

SUM(字段名) 把数据栏的值相加

  SELECT SUM(column_name) FROM table_name

(6) 数据表的建立和删除:

  创建:

CREATE TABLE 数据表(字段1 类型1(长度),字段2 类型2(长度) …… )
例:CREATE TABLE classTab(name varchar(50),datetime default now())

 

删除:

DROP TABLE 数据表           删除内容和定义,释放空间(清空表)

TRUNCATE TABLE 数据表  删除内容、释放空间但不删除定义(清空表数据, 不能删除行数据)

DELETE TABLE 数据表   删除内容不删除定义,不释放空间(系统一行一行地删,效率较truncate低)

 

关于truncate的总结:

truncate table 在功能上与不带 WHERE 子句的 delete语句相同:二者均删除表中的全部行。

truncate delete速度快,且使用的系统和事务日志资源少。

delete 语句每次删除一行,并在事务日志中为所删除的每行记录一项。所以可以对delete操作进行roll back

1truncate 在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令Delete将被撤销,而 truncate 则不会被撤销。 
2
truncate 是一个DDL语言,向其他所有的DDL语言一样,他将被隐式提交,不能对 truncate 使用ROLLBACK命令。 
3
truncate 将重新设置高水平线和所有的索引。在对整个表和索引进行完全浏览时,经过 truncate 操作后的表比Delete操作后的表要快得多。 
4
truncate 不能触发任何Delete触发器。 
5
、当表被清空后表和表的索引讲重新设置成初始大小,而delete则不能。 
6
、不能清空父表

 

posted @ 2017-02-18 17:08  宁馨儿11  阅读(1582)  评论(0编辑  收藏  举报