福州建网站-福州做网站公司
福州做网站电话:0591-83584081 点击在线即时聊天-福州建站 点击在线即时聊天-福州网站建设
新闻中心
行业新闻
INDUSTRY NEWS
企业动态
ENTERPRISES DYNAMIC
网络编程
INTERNET KNOWLEDGE
网站优化
SEO

 
在线客服咨询一:
在线客服咨询二:
在线技术咨询一:
在线技术咨询二:
24小时在线咨询:
在线咨询:0591-83584081
 行业资讯
福州管道疏通推荐福州榕
公众号“意外艺术”获得
网约车经营许可证长啥样
中国最具潜力的100家创业
黄金十年结束后的互联网
为何“直播”和“内容”
可升空的办公桌,再也不
域名管理拟新规:或不得
♦ 您的位置:首页 >> 新闻中心  

30万条数据快速检索的T-SQL
本文来源:网络  发表日期:2010-05-05 13:37:51  录入:www.yiliancn.com

数据库:

30万条,有ID列但无主键,在要搜索的“分类”字段上建有非聚集索引

过程T-SQL:

/*
用户自定义函数:执行时间在1150-1200毫秒左右
CREATE FUNCTION [dbo].[gethl] (@types nvarchar(4))
RETURNS table AS
return select 书名 from 图书三十万条 Where 分类 Like '%'+@types+'%'

存储过程:
CREATE PROCEDURE [dbo].[getfl](@typen nvarchar(4))
AS
select 书名 from 图书三十万条 Where 分类 Like '%'+@typen+'%'

*/

 

declare @a datetime,@b nvarchar(4)
set @a=getDate()
select 书名 from 图书三十万条 Where 分类 Like '%医学%' --“分类”列有非聚集索引,比聚集索引1150快一点,差不多执行时间在1100左右
-- select 书名 from gethl('医学') --使用用户自定义函数,效率和建立聚集索引一样,还稍慢一点 在1150-1200

-- Execute getfl '医学' --调用存储过程不能用括号包含参数 Execute getfl('医学')

-- select 书名 from VIEW1 --视图

print '运行时间:

print datediff(ms,@a,getDate())

结论:

1、以上各种使用直接查询、函数、视图、存储过程性能都差不多;

2、在这种文本字段,非聚集比聚集索引效果好。

比这些更好的方法是,在另外一个表上建立相应的检索ID,会更快!

分享到:
 
研发中心:福州市金山创意园
联系电话:0591-83584081 
网站标签:福州网站建设 福州网络公司 福州小程序开发 福州网站SEO优化 福州APP开发
 
点击这里给我发消息