select * from tabel order by datefield desc limit 0,1

解决方案 »

  1.   

    用的是什么数据库,如果是文体的我就不太清楚。如果是MYSQL
    可以用下列语句:
    $sql="select 日期字段名 from 表名 limit 0,1 order by '日期字段名' desc";
      

  2.   

    我举个例:数据库有18条记录,分开6组,每组3条.但这3条记录的日期不一样,我现在想取出每组日期最新的那条出来,即取出共6条出来.select 语句应该怎样写?
      

  3.   

    SELECT * 
    FROM `tablename` 
    ORDER BY to_days( `datefield` ) DESC 
    LIMIT 1
      

  4.   

    你这到底是要在后台写还是在存储过程写啊?
    不过我建议你用存储过程,安全又快速在mssql里面,这句话应该这样写  select top 1 * from tablename order by cast(datefield as datetime) desc
      

  5.   

    select * from 表名 where 条件 order by 日期字段 desc limit 0,1
      

  6.   

    楼主这个应该MYSQL吧,我给的语句是MYSQL的。
      

  7.   

    kingerq(多菜鸟) 你的方法是将1条记录都列出来,但我是希望列出6条.请看前面我举例.
      

  8.   

    <?php
    //我调试了好久,,最终结论是在不支持子查询的MYSQL数据库里根本无法用一条语句来实现你所需要的功能 //下面是在分组不多的情况下地折中办法$sql="select 分组字段名,max(日期字段名) from table group by 分组字段名";
    $result=mysql_query($sql,$db);
    $sql1="select * from table where "
    $i=1
    while ($rst=mysql_fetch_array($result))
    {
      if ($i==1) 
        $tmp.="(分组字段名=$rst[分组字段名] and 日期字段名='$rst[日期字段名]')";
      else
        $tmp.=" or (分组字段名=$rst[分组字段名] and 日期字段名='$rst[日期字段名]')";
    $i++;
    }
    $sql1.=$tmp;
    $result1=mysql_query($sql1,$db);
    $rst1=mysql_fetch_array($result1);//这里就得到你想要的记录了。。
    //如果分组很多的话,SQL语句会变的很长,所以只能这样了。。
    $sql="select 分组字段名,max(日期字段名) from table group by 分组字段名";
    $result=mysql_query($sql,$db);while ($rst=mysql_fetch_array($result))
    {
        $sql1="select * from table where (分组字段名=$rst[分组字段名] and 日期字段名='$rst[日期字段名]')";
        $result1=mysql_query($sql1,$db);
        $rst1=mysql_fetch_array($result1);//这里就得到你想要的其中一条记录了。。
    }
    ?>相信这一定不是最好的办法
    如果谁有好的办法,也可拿出来大家分享啊。。
      

  9.   

    select top 1 * from tablename order by 1 desc
      

  10.   

    $sql="select 分组字段名,max(日期字段名) from table group by 分组字段名 order by 日期字段名desc";
      

  11.   

    mysql 4.1 后支持子查询的,不过速度很慢,建议用联合查询5.0支持视图
      

  12.   

    用select去嵌套select,绝对可以实现你要的效果
    select * from (select ......你的分组条件) order by date desc limit 0,1