随笔分类 -  sql

sql文章学习
摘要:表Aid name1aaaa2 bbbb3 cccc表Bid A_id log1 1132221131132 13334 3 1355表A为人员信息表,表B为信息日志表。要求列出人员最后日志状态SELECT A.id, A.name, B.logFORM A INNER JOINB ON A.id=B.A_id AND B.id=(SELECT MAX(id) FORM B WHERE A_id=A.id)ORDER BY A.id DESC 阅读全文
posted @ 2013-05-30 11:53 .net 学习 阅读(412) 评论(0) 推荐(0)
摘要:四、聚集索引的重要性和如何选择聚集索引在上一节的标题中,笔者写的是:实现小数据量和海量数据的通用分页显示存储过程。这是因为在将本存储过程应用于“办公自动化”系统的实践中时,笔者发现这第三种存储过程在小数据量的情况下,有如下现象:1、分页速度一般维持在1秒和3秒之间。2、在查询最后一页时,速度一般为5秒至8秒,哪怕分页总数只有3页或30万页。虽然在超大容量情况下,这个分页的实现过程是很快的,但在分前几页时,这个1-3秒的速度比起第一种甚至没有经过优化的分页方法速度还要慢,借用户的话说就是“还没有ACCESS数据库速度快”,这个认识足以导致用户放弃使用您开发的系统。笔者就此分析了一下,原来产生这种 阅读全文
posted @ 2012-03-14 15:25 .net 学习 阅读(509) 评论(0) 推荐(0)
摘要:三、实现小数据量和海量数据的通用分页显示存储过程建立一个web 应用,分页浏览功能必不可少。这个问题是数据库处理中十分常见的问题。经典的数据分页方法是:ADO 纪录集分页法,也就是利用ADO自 带的分页功能(利用游标)来实现分页。但这种分页方法仅适用于较小数据量的情形,因为游标本身有缺点:游标是存放在内存中,很费内存。游标一建立,就将相 关的记录锁住,直到取消游标。游标提供了对特定集合中逐行扫描的手段,一般使用游标来逐行遍历数据,根据取出数据条件的不同进行不同的操作。而对于多表和 大表中定义的游标(大的数据集合)循环很容易使程序进入一个漫长的等待甚至死机。更重要的是,对于非常大的数据模型而言, 阅读全文
posted @ 2012-03-14 15:24 .net 学习 阅读(544) 评论(0) 推荐(0)
摘要:二、改善SQL语句很多人不知道SQL语句在SQL SERVER中是如何执行的,他们担心自己所写的SQL语句会被SQL SERVER误解。比如:select * from table1 where name='zhangsan' and tID > 10000和执行:select * from table1 where tID > 10000 and name='zhangsan'一些人不知道以上两条语句的执行效率是否一样,因为如果简单的从语句先后上看,这两个语句的确是不一样,如果tID是一个聚合索引,那么后一句仅仅从表 的10000条以后的记录中查找 阅读全文
posted @ 2012-03-14 15:23 .net 学习 阅读(541) 评论(0) 推荐(1)
摘要:首先,为了建立一个测试环境,我们来往数据库中添加1000万条数据:declare @i intset @i=1while @i<=250000begininsert into Tgongwen(fariqi,neibuyonghu,reader,title) values('2004-2-5','通信科','通信科,办公室,王局长,刘局长,张局长,admin,刑侦支队,特勤支队,交巡警支队,经侦支队, 户政科,治安支队,外事科','这是最先的25万条记录')set @i=@i+1endGOdeclare @i intset 阅读全文
posted @ 2012-03-14 15:21 .net 学习 阅读(903) 评论(0) 推荐(0)