sorry,应该是:
Select DISTINCT(approvename)  from (Select submitdate,tag,approvename from approvecourse where logname='fans' order by submitdate desc)

解决方案 »

  1.   

    Select DISTINCT(approvename)  from  approvecourse where logname='fans' order by submitdate desc
      

  2.   

    我用这条语句到是按approvename分出来了,但在我的数据库中不同记录下approvename对应的值相同而submitdate对应的值不同,因为我只想要最近时间的approvename,这条语句为:
    select approvename,submitdate,tag from approvecourse where logname='fans'  group by approvename 
    ,分是分组了,但是时间是乱的,不是最新的时间,我应该怎么样改呢?
    我改成这样:
    select approvename,submitdate,tag from approvecourse where logname='sunhao'  group by approvename order by approvename desc
    还是不行,它只是把我的结果按submitdate排了一个序,而这个结果中就有一个不是最新的时间,哦,忘了,submitdate是一个date值,该怎么半啊
      

  3.   

    我看傻了.没明白呵呵.
    w但好象可以form table1 别名,table1 别名.
    一个表可以连两次.用别名分.这样能实现吗?
      

  4.   

    哦,是这样的,我有一个表,我要从中取三个字段的值,但其中一个字段的值不能重复,所以用distinct,另外一个字段必须要最新的日期,因为有两个限制,所以现在问题不好解决,虽然可以先用个语句select出不同的,然后再用这个语句的一个结果作为where的条件重新得到最新日期值,但这样效率太低了
      

  5.   

    approvename              submitdate              tag  销售类资格证             2002-09-24 16:55:42         3   
     销售类资格证             2002-09-25 11:43:07         2   
     社会公共安全产品生产许可证   2002-09-26 17:21:13      0    
     社会公共安全产品生产许可证   2002-09-26 17:22:11      3   
     社会公共安全产品生产许可证   2002-09-27 16:02:18      3   
    想要的结果为:
     approvename              submitdate                tag  销售类资格证             2002-09-25 11:43:07         2   
     社会公共安全产品生产许可证   2002-09-27 16:02:18      3   
      

  6.   

    你用这个试试select approvename,Max(submitdate),tag from approvecourse where logname='fans'  group by approvename 在线等你回复,快点吧