s_blogs 表,字段设计id      userid         title    content
s_user 表,字段设计
id    realname  hashua
现在的目标是要输出博客信息且分页,用户表里面 hashua 字段大的 排在前面。我给出的sql语句是select * from s_blogs where userid in (select id from s_user) order by FIND_IN_SET(userid,select id from s_user order by hashua desc)但是 结果 都不对,且没排序。请问下 应该是怎么样的解决方案

解决方案 »

  1.   

    select A.*
    fro s_blogs A,s_user B
    where A.userid=B.id
    order by A.hashua desc
    limit 1,100;
      

  2.   

    贴建表及插入记录的SQL,及要求结果出来看看
      

  3.   

    rucypli 的方案 不行 我运行了 结果 userid 出现了跳跃 好像是按id 直接顺序输出的
      

  4.   

    FIND_IN_SET用法不了解 ,直接写个存储过程:参数 ps_limit_start int ,ps_limit_size int ,
    直接使用inner jion (s_user 和s_blogs  )查询 ,order by s_user.hashua desc  limit   ps_limit_start ,ps_limit_size 
    注意使用:limit   ps_limit_start ,ps_limit_size  MYSQL服务器版本要5.5.11以上(包含)
      

  5.   

    FIND_IN_SET(userid,select id from s_user order by hashua desc)没有这种用法啊。估计是想FIND_IN_SET(userid,select group_concat(id) from s_user order by hashua desc)