比如说
select a.*,b.* from aaa as a left join bbb as b on a.id=b.id
但是在bbb表中满足 条件的有几条 即b.id有重复的 我想取最后那条怎么取?

解决方案 »

  1.   

    可以参考下贴中的多种方法http://topic.csdn.net/u/20091231/16/2f268740-391e-40f2-a15e-f243b2c925ab.html
    [征集]分组取最大N条记录方法征集,及散分....
      

  2.   

    或者你可以提供更详细的信息。 (不要高估你的汉语表达能力或者我的汉语理解能力)
       建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
       参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
       
       1. 你的 create table xxx .. 语句
       2. 你的 insert into xxx ... 语句
       3. 结果是什么样,(并给以简单的算法描述)
       4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
       
       这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。   
      

  3.   

    你可以使用ORDER BY 来控制排序。
      

  4.   


    问题是 group by 在order by 之前 ,是先分组后排序,要改成先排序后分组 ,不知道有什么办法没有。
      

  5.   

    假设有表数据如下
    aid  bid  avalue
    1     1    aaa
    2     1    bbb
    3     1    ccc
    4     2    ddd
    5     2    eee
    6     1    fff
    7     3    ggg
    8     2    hhh
    9     3    iii
    10    1    jjj
    我想用group by 取到的数据如下 (grouby bid)
    10  1  jjj
    8   2  hhh
    9   3  iii因为一般直接group by 应该取到的是如下的
    1  1  aaa
    4  2  ddd
    7  3  ggg其实问题描述就是
    满足group by bid 的结果有多条 我要其中aid 最大的那条(其实就是最后加入的那条)就比方说 bid 等于2 的结果有多条 我要得到其中 aid最大的那条(8   2  hhh)
      

  6.   

    瞄了一眼,好像没用。不过通过baidu找到解决的方法了 如下
    http://hi.baidu.com/xylweb/blog/item/02e0d882e8aa48b56d81195f.html谢谢大家 结贴!