表的结构articleid, userid, date1,1 ,12234234234
2,1 ,23423423423
3,2 ,22222222222
4,3 ,22222222111
5,3 ,23423423423key articlied
一个文章的表结构。
如何求得一个用户的第一个作品,可以的话再加一个需求,一个月内的

解决方案 »

  1.   

    SELECT * FROM t1 where articleid in (select min(articleid) from t1 group by userid )
      

  2.   

    $time = mktime(0, 0, 0, -1);
    $sql = "select * from xxx where userid = 1 and date > {$time} order by articleid ASC limit 1";
      

  3.   

    select * from xxx where userid = 1 limit 1
      

  4.   

    "select * from table where userid = '$userid' order by date ASC limit 1"我觉得这样可以搜索到某人的第一个作品了啊
      

  5.   

    不知道这样是否可以,我对了几个数据。
    select articleid,userid, date from (select * from t1 order by date asc) article group by userid limit 10;
    加上时间是这样的:
    select articleid,userid, date from (select * from t1 order by date asc) article group by userid having date>(unix_timestamp()-3600*24*31) limit 10;其实还有需求,还要根据收藏数。但如果上边正确的话,上边的我可能会生成一个临时表。
      

  6.   

    恩!二楼可行!我会先生成一个临时表!会采用二楼的写法
    select min(articleid) from t1 group by userid,
    用这个语句先查出articleid,然后再查详细信息。写入临时表。
    这样对数据量大的也可行。谢谢了!大侠!
      

  7.   


    SELECT * FROM t1 WHERE UNIX_TIMESTAMP(CURRENT_DATE()) < date+30*24*3600 GROUP BY userid ORDER BY articleid ASC
      

  8.   

    select * from xxx group by articleid order by date asc limit 0,1