本帖最后由 doodoosun 于 2009-11-19 20:36:43 编辑

解决方案 »

  1.   

    select max(poster_id),account_id
    from poster
    group by account_id
      

  2.   


    SELECT p.poster_id,p.account_id
    FROM poster p
    WHERE NOT EXISTS
    (SELECT 1 FROM poster WHERE account_id=p.account_id AND update_time>p.update_time)
      

  3.   

    select a.poster_id ,a.accout_id,a.update_time 
    from poster a, account b ,(
    select max(poster_id) as m_poster_id,account_id
    from poster
    group by account_id
    ) c
    where a.account_id = b.accout_id and accout_id =1  
    and a.poster_id=c.m_poster_id
    group by a.poster_id ,a.accout_id,a.update_time
    order by a.update_time desc limit 1
      

  4.   


    SELECT p1.poster_id,p1.account_id 
    FROM poster p1,
    (SELECT account_id,max(update_time) ut
    FROM poster 
    GROUP account_id) p2
    WHERE p1.account_id=t2.account_id AND p1.update_time=p2.update_time
    ORDER BY p1.poster_id;
      

  5.   


    SELECT p1.poster_id,p1.account_id 
    FROM poster p1,
    (SELECT account_id,max(update_time) ut
    FROM poster 
    GROUP account_id) p2
    WHERE p1.account_id=t2.account_id AND p1.update_time=p2.ut
    ORDER BY p1.poster_id;