SQL Server语句:
select max(id) as id,zhu from zhu where zhu in (1,2,3) group by zhu
在Access怎么写?

解决方案 »

  1.   

    select max(id) as id,zhu from zhu where 
    zhu = 1 or zhu = 2 or zhu = 3 group by zhu
      

  2.   

    是差不多,可是在access中会涉及到一个合计函数的问题:
    select 中列出的字段除了计算字段,其他一律必须在 group by 子句中列出 
    1.select max(这个是计算字段),非计算字段 from table group by 非计算字段 
    是正确的 2.select max(这个是计算字段),非计算字段1,非计算字段2 from table group by 非计算字段1 
    是错误的如果我要显示数据表中的每个字段,按1的方法就会错,按2的方法就得不我要的结果了
      

  3.   

    请高手帮帮忙,整个在Access中查询的结构跟SQL Server中select max(id) as id,zhu,…… from zhu where zhu in (1,2,3) group by zhu
    效果一样的sql语句
      

  4.   

    --#1.
    select b.* from
    (
    select max(id) as max_id,zhu 
    from t_zhu 
    where zhu in (1,2,3) 
    group by zhu
    ) a
    inner join t_zhu b
    on a.max_id = b.id
    --#2.
    select * from t_zhu a
    where zhu in (1,2,3) 
    and not exists(select 1 from t_zhu where zhu = a.zhu and id > a.id)
      

  5.   

    --表结构
    /*
    ID 数字
    zhu 数字
    field1 文本
    field2 文本
    */
    --结果
    /*
    ID zhu field1 field2
    2 1 3 4
    3 2 5 6
    4 3 7 8
    */