1。随机从MYSQL中取出10条记录,最有效的方法是?一般网站做法是?
2。每发一条类似《说说》的信息,保存其评论信息与回复信息,用数据库建表好,还是用XML。假如每小时更新上100万条说说,又该怎么办?
3。如何有效的判断用户是否离线。前提SESSION保存一天有效
4。用PHP+AJAX+XML做在线一对一聊天,有什么好办法判断对方已经关闭了聊天窗口?
5。没了小弟刚接触网络。所以问题很多。。还请大家多多关照。。

解决方案 »

  1.   

    1) select * from t order by rand() limit 10; 但这个效率绝对不高。是个全表扫描。一般是自己用程序生成
    随机数X,然后select  * from t where id >x order by id limit 1 ,然后再找下一个。X 取值在记录总数内。2) 不知道什么是 《说说》3) 在客户端用JS做个定时注册。每10秒或者每10分钟注册一下。
      

  2.   


    《!--说说 是腾讯QQ空间里的一项功能。  你说的自己设置随机数,这个一般的网站都是这么做的么?
      
      这条数据“select * from t order by id desc limit 20” 从最后取记录,是不是也会全表扫描?  我想从数据表中在后面取数据。。
      
     谢谢你的回答!
      

  3.   

    一般网站是直接select order by rand limit 10 ,但也看你所指的一般网站是什么。
    如果ID上有索引,则不是全面扫描。