if object_id('pubs..a') is not null
drop table a
go
create table a
(
aa int,
bb char(1)
)
insert into a(aa,bb) values(1,'g')
if object_id('pubs..b') is not null
drop table b
go
create table b
(
aa int,
cc char(1),
dd char(1)
)
insert into b(aa,cc,dd) values(1,2,'t')
insert into b(aa,cc,dd) values(1,3,'t')
insert into b(aa,cc,dd) values(2,1,'H')
select a.* , m.cc,m.dd from a,
(
select b.* from b,(select aa , max(cc) as cc from b group by aa) t
where b.aa=t.aa and b.cc = t.cc
) m
where a.aa = m.aa