仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 877|回复: 8
打印 上一主题 下一主题

[学习教程] MYSQL网站制作之30万条数据疾速检索的T

[复制链接]
老尸 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:15:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
DBaaS系统其实具有更大的市场机遇:像其他云服务一样,DBaaS意味着更短的销售周期,更少的启动费用,持续不断的收入,也意味着比之前更多的客户。</p>数据库:
30万条,有ID列但无主键,在要搜刮的“分类”字段上建有非会萃索引
历程T-SQL:
/*
用户自界说函数:实行工夫在1150-1200毫秒摆布
CREATEFUNCTION[dbo].[gethl](@typesnvarchar(4))
RETURNStableAS
returnselect书名from图书三十万条Where分类Like%+@types+%

存储历程:
CREATEPROCEDURE[dbo].[getfl](@typennvarchar(4))
AS
select书名from图书三十万条Where分类Like%+@typen+%

*/declare@adatetime,@bnvarchar(4)
set@a=getDate()
select书名from图书三十万条Where分类Like%医学%--“分类”列有非会萃索引,比会萃索引1150快一点,差未几实行工夫在1100摆布
--select书名fromgethl(医学)--利用用户自界说函数,效力和创建会萃索引一样,还稍慢一点在1150-1200

--Executegetfl医学--挪用存储历程不克不及用括号包括参数Executegetfl(医学)

--select书名fromVIEW1--视图

print运转工夫:

printdatediff(ms,@a,getDate())结论:
1、以上各类利用间接查询、函数、视图、存储历程功能都差未几;
2、在这类文本字段,非会萃比会萃索引效果好。
比这些更好的办法是,在别的一个表上创建响应的检索ID,会更快!
正如前文所提到的,MySQL易学、易部署、易管理和易维护。
小妖女 该用户已被删除
沙发
发表于 2015-1-19 06:17:24 | 只看该作者
另一个是把SQL语句写到服务器端,就是所谓的SP(存储过程);
谁可相欹 该用户已被删除
板凳
发表于 2015-1-28 05:04:52 | 只看该作者
所以你总能得到相应的升级版本,来满足你的需求。
因胸联盟 该用户已被删除
地板
发表于 2015-2-5 16:49:19 | 只看该作者
如果是将来做数据库的开发设计,就应该详细学习T-SQL的各种细节,包括T-SQL的程序设计、存储过程、触发器以及具体使用某个开发语言来访问数据库。
精灵巫婆 该用户已被删除
5#
发表于 2015-2-13 00:39:12 | 只看该作者
如果,某一版本可以提供强大的并发响应,但是没有Oracle的相应版本稳定,或者价格较贵,那么,它就是不适合的。
不帅 该用户已被删除
6#
发表于 2015-3-3 11:57:02 | 只看该作者
可以动态传入参数,省却了动态SQL的拼写。
莫相离 该用户已被删除
7#
发表于 2015-3-11 11:04:50 | 只看该作者
可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。
若天明 该用户已被删除
8#
发表于 2015-3-18 12:46:43 | 只看该作者
但是随着数据量的增大,这种成本差距会逐渐减小,趋于相等。(500万数量级只相差10%左右)
老尸 该用户已被删除
9#
 楼主| 发表于 2015-3-26 02:43:44 | 只看该作者
我是新手,正在学习数据库和操作系统,深感理论的泛广,唯有一步一步来,但是又感觉时间不够,收集了很多资料却总是没能认真的看完,希望有一个讨论板块,大家共同解决,共同分享,共同努力
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 20:56

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表