表A有
aa  bb  
1   一
2   二
3   三
4   四
5   五
表B有
aaa  bbb  ccc  ddd
1    一   10   111
2    二   12   111
2    二   13   222
3    三   14   222
怎么得到
aa  bb  ccc
1   一  10
2   二  12
3   三  
4   四   
5   五   

解决方案 »

  1.   

    結果是不是有筆誤?trySelect
    A.*,
    Min(B.ccc) As ccc
    From
    A
    Left Join
    B
    On A.aa =B.aaa And A.bb = B.bbb
    Group By
    A.aa, A.bb
      

  2.   

    应该得到结果
    aa  bb  ccc
    1   一  10
    2   二  12
    3   三  NULL
    4   四  NULL
    5   五  NULL
      

  3.   

    為什麼不是?aa  bb  ccc
    1   一  10
    2   二  12
    3   三  14
    4   四  NULL
    5   五  NULL3    三在表B中也有
      

  4.   

    鱼的是正确的,
    楼主是不是想排序啊?Select
    A.*,
    Min(B.ccc) As ccc
    From
    A
    Left Join
    B
    On A.aa =B.aaa And A.bb = B.bbb
    Group By
    A.aa, A.bb
    Order by A.aa
      

  5.   

    规则不够明确啊,是不是ddd=222的都不要啊?
    Select
    A.*,
    B.ccc
    From
    A
    Left Join
    B
    On A.aa =B.aaa And A.bb = B.bbb
    Where B.ddd='111'
      

  6.   

    3    三在表B中也有
    ---------------------我看不出LZ想要什么结果...
      

  7.   

    应该要把表B 中的ddd字段做为条件,只列ddd为111的
      

  8.   

    Select A.*,Min(B.ccc) As ccc
    From A Left Join B
    On A.aa =B.aaa And A.bb = B.bbb
    Group By A.aa, A.bb
    Order by A.aa
      

  9.   

    hyc_music1981(穿裤衩的地狱天使)猜的也許是對的
      

  10.   

    也就是说最后得到的结果集是这样的
    结果集里有三个字段分别是aa,bb,ccc
    其中aa,bb是表A的字段,需要全部原样显示
    ccc是表B的字段,在结果集里ccc只显示表B中ddd为111的才显示,没有对应的都是null,当然表A中的aa对应表B中的aaa
      

  11.   

    這樣Select
    A.*,
    B.ccc
    From
    A
    Left Join
    B
    On A.aa =B.aaa And A.bb = B.bbb And B.ddd='111'
      

  12.   

    to paoluo(一天到晚游泳的鱼):
    这样不行吧,这样只能出两条记录
    aa  bb  ccc
    1   一  10
    2   二  12