文章分类 -  【sqlserver】

摘要:下面的例子和SQL语句均在SQL Server 2008环境下运行通过,使用SQL Server自带的AdventureWorks数据库。详细出处参考:1.ROW_NUMBER()基本用法:SELECTSalesOrderID,CustomerID,ROW_NUMBER() OVER (ORDER BY SalesOrderID) AS RowNumberFROM Sales.SalesOrderHeader结果集:SalesOrderID CustomerID RowNumber--------------- ------------- ---------------43659 676 14 阅读全文
posted @ 2011-03-23 09:24 不弃的追求 阅读(338) 评论(0) 推荐(0)
摘要:聚集索引的区别 聚集索引:物理存储按照索引排序 非聚集索引:物理存储不按照索引排序优势与缺点聚集索引:插入数据时速度要慢(时间花费在“物理存储的排序”上,也就是首先要找到位置然后插入),查询数据比非聚集数据的速度快聚集索引的区别 聚集索引:物理存储按照索引排序 非聚集索引:物理存储不按照索引排序优势与缺点聚集索引:插入数据时速度要慢(时间花费在“物理存储的排序”上,也就是首先要找到位置然后插入),查询数据比非聚集数据的速度快索引是通过二叉树的数据结构来描述的,我们可以这么理解聚簇索引:索引的叶节点就是数据节点。而非聚簇索引的叶节点仍然是索引节点,只不过有一个指针指向对应的数据块。如下图:非聚集 阅读全文
posted @ 2011-02-24 13:36 不弃的追求 阅读(183) 评论(0) 推荐(0)
摘要:我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习、摘录、并汇总部分资料与大家分享!(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE 的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表.(2) WHERE子句中的连接顺序.:ORACLE采用自下而上的顺序解析WHER 阅读全文
posted @ 2011-02-23 18:43 不弃的追求 阅读(159) 评论(0) 推荐(0)
摘要:SQL Server 2008我们也能从中体验到很多新的特性,但是对于SQL Server 2008安装,还是用图来说话比较好。本文将从SQL Server 2008安装开始讲起。本来这篇是打算玩玩服务器功能中的第一个:adrms的,没想到装了几次都安装成功,但是有错误,后来没招了,打算将rms的数据库放到sql上来折腾折腾,所以为了不让大家觉得突兀,所以本篇SQL Server 2008安装,S... 阅读全文
posted @ 2010-12-03 22:04 不弃的追求 阅读(469) 评论(0) 推荐(0)
摘要:有关分页 SQL 的资料很多,有的使用存储过程,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用存储过程是个不错的选择,因为存储过程是经过预编译的,执行效率高,也更灵活。先看看单条 SQL 语句的分页 SQL 吧。方法1:适用于 SQL Server 2000/2005SELECTTOP页大小*FROMtable1WHEREidNOTIN(SELECTTOP页大小*(页数-1) idF... 阅读全文
posted @ 2010-04-26 20:01 不弃的追求 阅读(214) 评论(0) 推荐(0)