救命!!Sql语句问题
现有两个表A和B,A.id   与B.aid关联,一个A对应多个B,B里面有一个关键字是记录顺序的B.order,这个时候我需要联合查询A和B,得到每个A有多少个B,关键是必须按照B.order得到这个值,我的语句如下   
 select   count(A.id)   as   newid   where   A.id=B.aid   group   by   A.id   order   by   B.order   
 但是提示说B.order不再聚合函数里,也不在groupby子句中,很郁闷,在线等待高手指点。。。。
------解决方案--------------------select b.id ,count(*) as newid from A ,B where A.id=B.aid group by b.id order by B.order
------解决方案--------------------select A.ID,B.order,count(A.id) as newid where A.id=B.aid group by A.id,B.order order by B.order
------解决方案--------------------select A.id,count(1) as as newid  
 from A 
 join B on A.id = B.aid 
 group by A.id   
 或者 
 select A.id,count(A.id) as newid  
 from A,B where A.id=B.aid group by A.id    
 另外,关键是必须按照B.order得到这个值 什么意思?
------解决方案--------------------select A.id ,count(*) as [newid] 
 from A inner join B on A.id=B.aid  
 group by A.id  
 order by min(B.[order]) 
------解决方案--------------------  create table a 
 ( 
 id int  
 )   
 create table b 
 ( 
 id varchar(1), 
 aid int, 
 [order] int 
 )     
 insert into a select 1 
 insert into a select 2   
 insert into b select  'a ',1,1 
 insert into b select  'b ',1,2 
 insert into b select  'c ',2,3 
 insert into b select  'd ',2,4     
 select a.id ,count(*) as [newid] 
 from a inner join b on a.id=b.aid  
 group by a.id  
 order by min(b.[order])   
 --结果 
 1	2 
 2	2