当数据达到千万或上亿级别时,把数据全部显示在页面上可能唯一的办法就是分批取出了
我采用的办法就是按自增列每次读取10000条,并放在同一个缓存空间里面,当用户浏览的数据在10000条之前,就直接呈现缓存中的数据;当数据在10000条后,用同样的方法,将新数据插入缓存空间覆盖掉旧数据。经过测试,发现这种方法的效率要远远高于网上流传的一些分页技术。
可是之后,我又发现了一些明显的缺陷,比如排序
用这种方法只能对缓存中的10000条数据进行排序,也就是说,会循环出现A-Z的排序情况,这显然不符合用户的使用习惯。
不知道各位是怎样处理大数据的显示问题的,如果有好的方案,请不吝赐教!!
9 个解决方案
#1
怎么没有人帮忙啊
难道大家写程序都不考虑数据量的问题
还是不管数据量大小都一概的 SELECT *
难道大家写程序都不考虑数据量的问题
还是不管数据量大小都一概的 SELECT *
#2
象你说的,谁没事查个几万条数据,一条一条看完再看下个几万条?
海量级的数据就要重点放在数据库的操作上了。
分区表,分表,索引,存储过程,视图...这写做好,读取数据是很快的,关键是页面显示会
非常慢,所以还是把常用数据存成静态页面的好.修改某条数据时,只重新生成其所在的页面。
我原来管理通讯的数据库ORACLE,数据不是很多,2千多万条~~做CRM,查询各种数据
快的很.
#3
有哪些SB需要把千万的数据一页一页的看?
#4
先在后台排好序再取
#5
谢谢大家的讨论
可是我希望大家不要帮我寻求替代方法
而是直接解决问题
我说的是“遍历”所有数据,而不是select其中符合条件的行。
谢谢
可是我希望大家不要帮我寻求替代方法
而是直接解决问题
我说的是“遍历”所有数据,而不是select其中符合条件的行。
谢谢
#6
楼主好有意思哦,select 你不加条件不就遍历所有记录了么?
你的问题不就是分页读取么?
#7
不好意思
我还没有得到我的答案,可能是意思没有说明白
假设我有一张数据表,含有两个字段ID(自动编号)和name(用于存储中文)
我是想按name排序每次从表中取出1W条数据
怎样才能不重复、不遗漏,还能按name排序
谢谢!
我还没有得到我的答案,可能是意思没有说明白
假设我有一张数据表,含有两个字段ID(自动编号)和name(用于存储中文)
我是想按name排序每次从表中取出1W条数据
怎样才能不重复、不遗漏,还能按name排序
谢谢!
#8
自己再顶下先
#9
不好意思
我还没有得到我的答案,可能是意思没有说明白
假设我有一张数据表,含有两个字段ID(自动编号)和name(用于存储中文)
我是想按name排序每次从表中取出1W条数据
怎样才能不重复、不遗漏,还能按name排序
谢谢!
我还没有得到我的答案,可能是意思没有说明白
假设我有一张数据表,含有两个字段ID(自动编号)和name(用于存储中文)
我是想按name排序每次从表中取出1W条数据
怎样才能不重复、不遗漏,还能按name排序
谢谢!
#1
怎么没有人帮忙啊
难道大家写程序都不考虑数据量的问题
还是不管数据量大小都一概的 SELECT *
难道大家写程序都不考虑数据量的问题
还是不管数据量大小都一概的 SELECT *
#2
象你说的,谁没事查个几万条数据,一条一条看完再看下个几万条?
海量级的数据就要重点放在数据库的操作上了。
分区表,分表,索引,存储过程,视图...这写做好,读取数据是很快的,关键是页面显示会
非常慢,所以还是把常用数据存成静态页面的好.修改某条数据时,只重新生成其所在的页面。
我原来管理通讯的数据库ORACLE,数据不是很多,2千多万条~~做CRM,查询各种数据
快的很.
#3
有哪些SB需要把千万的数据一页一页的看?
#4
先在后台排好序再取
#5
谢谢大家的讨论
可是我希望大家不要帮我寻求替代方法
而是直接解决问题
我说的是“遍历”所有数据,而不是select其中符合条件的行。
谢谢
可是我希望大家不要帮我寻求替代方法
而是直接解决问题
我说的是“遍历”所有数据,而不是select其中符合条件的行。
谢谢
#6
楼主好有意思哦,select 你不加条件不就遍历所有记录了么?
你的问题不就是分页读取么?
#7
不好意思
我还没有得到我的答案,可能是意思没有说明白
假设我有一张数据表,含有两个字段ID(自动编号)和name(用于存储中文)
我是想按name排序每次从表中取出1W条数据
怎样才能不重复、不遗漏,还能按name排序
谢谢!
我还没有得到我的答案,可能是意思没有说明白
假设我有一张数据表,含有两个字段ID(自动编号)和name(用于存储中文)
我是想按name排序每次从表中取出1W条数据
怎样才能不重复、不遗漏,还能按name排序
谢谢!
#8
自己再顶下先
#9
不好意思
我还没有得到我的答案,可能是意思没有说明白
假设我有一张数据表,含有两个字段ID(自动编号)和name(用于存储中文)
我是想按name排序每次从表中取出1W条数据
怎样才能不重复、不遗漏,还能按name排序
谢谢!
我还没有得到我的答案,可能是意思没有说明白
假设我有一张数据表,含有两个字段ID(自动编号)和name(用于存储中文)
我是想按name排序每次从表中取出1W条数据
怎样才能不重复、不遗漏,还能按name排序
谢谢!