SQL Server -- 回忆笔记(四):case函数,索引,子查询,分页查
SQL Server知识点回忆篇(四):case函数,索引,子查询,分页查询,视图,存储过程 1. CASE函数(相当于C#中的Switch) ,Age,类别 Age tbUsers2. 索引 index 聚集索引(物理):一个表只能有一个。创建一个表时,如果有主键,主键会自动创建聚集索引。 非聚集索引(逻辑):一个表可以有多个。 增加索引后,会增加额外的存储空间开销,降低了增加新纪录、修改、删除的效率。 建索引:索引应该建在经常查询时用到的列上,查询时用到才有意义。数据量大时,使用有索引的列查询,效率会大幅度提高。 语法格式: create? index? 索引名称 On? 表名(列名) Ix_ tbUsers()3. 子查询 查询出的结果供外层的查询使用。 tableA id( id tableB Name)4. 分页查询 使用row_number()实现分页 思路:比如说要实现每页有10条记录的分页,获取第8页的数据。那么第8页的第一行的行号是前7页的总行数加1,第8页的最后一行的行号是8*10 。 那么每一页的第一行是(n-1)*10+1,最后一行是n*10。要取第几页的数据,n就传入第几页。 ,iRowNumerrow_number() ( id ) r.iRowNumer ()5. 视图 视图里只能存查询语句。如果视图查询语句中有重名的列,必须起别名。 创建视图: vw_Users tbUsers从视图查询: vw_Users6. 存储过程 数据库中默认存在的以sp_开头的是数据库系统的存储过程。 exec sp_databases:? 返回实例中的所有数据库 exec sp_tables: 返回当前数据库下的所有表 exec sp_columns: 用于获取指定表中的所有列(例:exec sp_columns? 'tbUsers' ) exec sp_helptext? 'sp_databases' :获取sp_databases源代码 创建存储过程: 执行存储过程: usp_sayHello创建带参数的存储过程: 执行带参数的存储过程: usp_add ,(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |