select
id,s.sid,(select total_aver_score from car_comment_score where sid = tb2.sid) as '评分总数',supports,series
from
(
select 
id,sid,supports,row_number() over (partition by sid order by id desc) as row_id2 
from car_comment as comm
) as tb2 
inner join car_series as s on tb2.sid = s.sid
where row_id2 = 1 and MinPrice >=0 and MaxPrice <= 550000
order by id descselect top 7 * from car_commentid       sid    评分总数 supports    series    系列总数
45 434 51 0 新威驰       18
40 188 92 0 昌河海象     69
37 163 65 0 吉普之星     50

系列总数是我自己加上的...
如:新威驰总共有18个、昌河海象69个

解决方案 »

  1.   

    select
        id,s.sid,(select total_aver_score from car_comment_score where sid = tb2.sid) as '评分总数',supports,series,系列总数=COUNT(1)OVER(PARTITION BY s.sid)
    from
    (
        select 
            id,sid,supports,row_number() over (partition by sid order by id desc) as row_id2 
        from car_comment as comm
    ) as tb2 
        inner join car_series as s on tb2.sid = s.sid
    where row_id2 = 1 and MinPrice >=0 and MaxPrice <= 550000
    order by id desc?
      

  2.   

    select
        id,s.sid,(select total_aver_score from car_comment_score where sid = tb2.sid) as '评分总数',supports,series,系列总数=COUNT(1)OVER()
    from
    (
        select 
            id,sid,supports,row_number() over (partition by sid order by id desc) as row_id2 
        from car_comment as comm
    ) as tb2 
        inner join car_series as s on tb2.sid = s.sid
    where row_id2 = 1 and MinPrice >=0 and MaxPrice <= 550000
    order by id desc??
      

  3.   

    但是我又不想再那样插条SQL语句那中间
      

  4.   

    但是我又不想再那样插条SQL语句到那中间...