select a.catid,isnull(b.num,0) num from category a left join (select left(artid,2) artid,count(*) num from articles group by left(artid,2)) b on a.catid=b.artid order by b.num
select a.catid,isnull(b.num,0) num from category a left join (select left(artid,2) artid,count(*) num from articles group by left(artid,2)) b on a.catid=b.artid order by b.num desc
select t1.catid, count(*) from category t1 left join articles t2 on (t1.catid = SubString(t2.artid,1,2)) group by t1.catid
select left(artid ,2),count(*) from articles group by left(artid ,2)
你的意思是articles表的artid首两位统计: select a.* from (select left(artid ,2) as artid,count(*) number from articles group by left(artid ,2) ) a order by number desc
select left(artid,2),count(*) from articles group by left(artid,2)
select a.* from (select left(artid ,2) as artid,count(*) number from articles group by left(artid ,2) ) a where number>0 order by number desc
select left(artid,2),count(*) from articles group by left(artid,2) order by count(*) desc
select left(artid,2),count(*) from articles group by left(artid,2) having count(*) > 0
select left(artid,2),count(*) from articles group by left(artid,2) having count(*)>0 order by count(*) desc
from category t1
left join articles t2 on (t1.catid = SubString(t2.artid,1,2))
group by t1.catid
from articles
group by left(artid ,2)
select a.* from
(select left(artid ,2) as artid,count(*) number
from articles
group by left(artid ,2)
) a
order by number desc
(select left(artid ,2) as artid,count(*) number
from articles
group by left(artid ,2)
) a
where number>0
order by number desc