我现在用这样的语句查询出一个记录集,
select a.* from tablename a where datetimecolumn=(select max(datetimecolumn) from tablename where username=a.username)然后我要跟一个叫erid的表做join 条件是查询出的结果中,username=erid.username
我试了直接做jion后还是只出来前面查询的结果erid表里的东西一个都每出来,这样写不是吗?那该怎样写?

解决方案 »

  1.   

    Is this right?
    select a.*,e.* from tablename a 
    join erid e on e.username=erid.username
    where a.datetimecolumn=(select max(datetimecolumn) from tablename where username=a.username)
      

  2.   

    select a.*,e.* from tablename a 
    right join erid e on e.username=erid.username
    where a.datetimecolumn=(select max(datetimecolumn) from tablename where username=a.username)
    ?
      

  3.   

    select a.*,b.* from tablename a 
    right join erid b on a.username=b.username
    where a.datetimecolumn=(select max(datetimecolumn) from tablename where username=a.username)