分页查询,查个 total 很难吗?

2018-04-02 10:42:22 +08:00
 wxsm

如题。一个破接口,后端开发人员三番五次说要不传 total,让我去别的地方取,说什么查个 total 相当全表扫,我真是服气。

14480 次点击
所在节点    程序员
95 条回复
jason19659
2018-04-02 17:30:07 +08:00
所以百万级的数据展示准确的 total 有什么意义。。数据少直接 count
dishuibaby
2018-04-02 17:47:15 +08:00
我们数据量比较大的时候。就用 solr 查询了。
还有就是给前端用户的展现。通常展现的都固定条件的列表,也不需要展现所有的数据列表吧。应该也不会有很复杂的搜索让用户自己选择。如果查询条件真的复杂了,那就要借助其他工具了。solr es xunsearch 都可以把
如果只是用 mysql 查,我们通常做的是最多展现 1000 页。
aliasliyu4
2018-04-02 18:01:43 +08:00
数据量很大的时候,我真的做不到啊,您继续喷吧,或者您来?
chairuosen
2018-04-02 18:19:11 +08:00
海量数据不是给人看的,给人看的拿 100 页足够
LichMscy
2018-04-02 18:25:34 +08:00
哈哈看标题第一反应没建索引,点进来果然
adablue77
2018-04-02 18:48:28 +08:00
如果你是前端 要明白自己职责是展现数据
数据都不给你 展现个毛线啊
性能优化不是你需要考虑的范围
产品原型确实需要 total 值 就跟写接口的要去
如果真是百万千万级的分页 你们后端会找产品撕逼的 不用你管
以性能推脱 不给数据 那直接出静态页多好 保证快
jjx
2018-04-02 19:00:23 +08:00
搞 erp 的哭了


每次报表必须有小计合计, 怎么也逃不过查询理论上执行了两次的命运
woshifyz
2018-04-02 19:10:24 +08:00
@nigelvon 你真写过大数据量的 count 吗?
yiplee
2018-04-02 19:23:46 +08:00
展示总评论总数查询条件不复杂性能肯定没问题
liuxu
2018-04-02 19:36:22 +08:00
需要建汇总表,《高性能 mysql 》一书建议可以用 Flexviews 插件
projectzoo
2018-04-02 19:38:37 +08:00
这个 count 确实不是简单的 count。。。
一个 comment 表中查询某一条 news 的 comment count 真的不是简单得 select count(*) 这么搞。
jyf
2018-04-03 10:04:24 +08:00
count 确实慢 不过不给是不对的 我就是做后端的 后端不应该把自己的技术困难推给调用方 如果真的很慢 那就上缓存 告知不能达到很高实时性就可以了
petelin
2018-04-03 10:31:30 +08:00
700 万 700MB, 花了 1.59 秒
6000 万 2.3G, count 不出来(已经没耐心等待返回了)
winglight2016
2018-04-10 19:17:12 +08:00
@EmdeBoas 那我是没机会用了,小厂完全用不上
Jamy
2018-08-24 14:55:45 +08:00
@LichMscy 85 我的 mongodb 中的一个集合光索引大小就 50G, 带条件 count??不存在的.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/443491

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX