select A.*,B.*
from news A,news_lang B
where A.newsid=B.newsid
order by langid desc
limit 2;

解决方案 »

  1.   

    select * 
    from (   
    select *
    from news a,news_lang b
    where a.newsid=b.newsid
    order by a.newsid,b.langid desc
    ) x
    group by a.newsid
      

  2.   


    limit 2可操作性不强,实现情况下,limit 2 有可能会把本来有用的值limit掉。
      

  3.   


    执行的时候提示 Duplicate column name 'newsid'另提供建表SQL:
    CREATE TABLE `news`( `newsid` INT AUTO_INCREMENT UNIQUE , `authorid` INT ); 
    CREATE TABLE `news_lang`( `newsid` INT , `langid` INT , `title` VARCHAR(256) , `content` TEXT ); 
      

  4.   

    select *
    from news a,news_lang b
    where a.newsid=b.newsid
    order by a.newsid,b.langid desc
    把这儿的select * 不要用 * ,换成字段名。