select 主表.姓名,max(细表.日期)
from 主表 left join 细表 on 细表.姓名=主表.姓名
group by 主表.姓名

解决方案 »

  1.   

    --如果就得到楼主示例的数据,同意楼上--如果你还有其他字段要显示,改用:select a.姓名,b.*
    from 主表 a join(
      select a.* from 细表 a join(
        select 姓名,日期=max(日期) from 细表 group by 姓名
      )b on a.姓名=b.姓名 and a.日期=b.日期
    )b on a.姓名=b.姓名
      

  2.   

    收到两位的帮助,特别感谢!!
    另外再问一个问题怎样把刚才选出的结果保存到另一库的表中。然后我的问题消失。即谢分。慢了,光顾灌水了
    select 主表.姓名,max(细表.日期)into db2..table2 from 主表 left join 细表 on 细表.姓名=主表.姓名 group by 主表.姓名
      

  3.   

    楼上:db2(新的数据库名),table2(新的表名)可以给分了!