发布网友 发布时间:2022-04-24 14:41
共3个回答
热心网友 时间:2022-04-08 00:23
select u.uid,count(w.weibo_id) as w_count from ts_user as u left join ts_weibo as w on u.uid = w.uid and u.uid>0 and w.isdel=0 and type_data is not null group by u.uid order by u.ctime desc limit 0,16 你这样排序肯定很忙,如果数据量有上万条,它就得先给你排好序在显示出来,你为什麽不把u.ctime做个*,在某个时间段。而不是所有的数据,就算是所有的数据,你也只取前17行,你不觉得你花很大的力气,结果是只要取粒芝麻追问是要取所有表啦~
追答你是想取所有数据是吧,那你干嘛加个LIMIT 0,16呢,你要先排序再显示的话就很慢,除非你是先显示,之後自己排序
热心网友 时间:2022-04-08 01:41
select u.uid, u.uname, w.c from ts_user u left join (
select uid,count(uid) c from ts_weibo group by uid
) w on u.uid=w.uid order by w.c desc;
热心网友 时间:2022-04-08 03:16
type_data是哪个表的?