[请教]关于超大数据量网站的数据搜索和分页的实现方法
2007-11-05 11:28
706 查看
请教像阿里巴巴这样的数据量过百万的网站,其数据搜索和分页是如何实现的?
我个人是用全文索引做的,把物品名和物品简介放在一起,检索这个字段。
分页是用存储过程做的,
CREATE PROCEDURE GetSearchEnterprise
(
@strWhere varchar(3000),
@PageSize int,
@PageIndex int
)
AS
declare @strSQL varchar(8000)
if @PageIndex=1
begin
set @strSQL='select top '+str(@PageSize)+' * from t_company where '+@strWhere+'order by companyid desc'
end
else
begin
set @strSQL='select top '+str(@PageSize)+' * from t_company where companyid<(select min(tmp_t_company.companyid) from (select top '+str((@PageIndex-1)*@PageSize)+' companyid from t_company where '+@strWhere+' order by companyid desc) as tmp_t_company ) and '+@strWhere+' order by companyid desc'
end
exec(@strSQL)
--print(@strSQL)
GO
请各位大师指点一下我,超级谢谢
我个人是用全文索引做的,把物品名和物品简介放在一起,检索这个字段。
分页是用存储过程做的,
CREATE PROCEDURE GetSearchEnterprise
(
@strWhere varchar(3000),
@PageSize int,
@PageIndex int
)
AS
declare @strSQL varchar(8000)
if @PageIndex=1
begin
set @strSQL='select top '+str(@PageSize)+' * from t_company where '+@strWhere+'order by companyid desc'
end
else
begin
set @strSQL='select top '+str(@PageSize)+' * from t_company where companyid<(select min(tmp_t_company.companyid) from (select top '+str((@PageIndex-1)*@PageSize)+' companyid from t_company where '+@strWhere+' order by companyid desc) as tmp_t_company ) and '+@strWhere+' order by companyid desc'
end
exec(@strSQL)
--print(@strSQL)
GO
请各位大师指点一下我,超级谢谢
相关文章推荐
- Android实现ListView分页自动加载数据的方法
- jsp+servlet+javabean实现数据分页方法完整实例
- 关于解决QTableView分页打印实现方法(仿Excel)
- asp.net 站内搜索功能的实现及利用datatable绑定数据并进行分页
- 关于加载无网络图与无数据图设计思路,点击重新加载方法实现
- Codeigniter框架实现获取分页数据和总条数的方法
- extremetable+hibernate实现分页 关于结合hibernate后台数据分页和eXtremeTable分页功能的使用
- ThinkPHP 关于用create方法实现数据更新的问题
- easyUi combogrid 实现分页和动态搜索远程数据
- Struts2+Hibernate实现数据分页的方法
- ASP.NET网站权限设计实现(三)——套用JQuery EasyUI列表显示数据、分页、查询
- JS实现表格数据各种搜索功能的方法
- 对数据进行分页显示到table中的实现方法
- ASP.NET网站权限设计实现——套用JQuery EasyUI列表显示数据、分页、查询
- Yii 2.0实现联表查询加搜索分页的方法示例
- 关于将类对象数据存入到数据库中的实现方法
- extremetable+hibernate实现分页 关于结合hibernate后台数据分页和eXtremeTable分页功能的使用
- android客户端和网站数据交互的实现(基于Http协议获取数据方法)
- 关于Echarts中formatter实现动态数据的方法
- EasyUi中的Combogrid 实现分页和动态搜索远程数据