ms sql查询

我现在需要做一个广告位管理。
addressinfo 地址表
Id Name SuperiorId
1 全国 0
2 安徽 1
3 福建 1
4 甘肃 1
......
firmTypeInfo 类型表
id name
1 类型一
2 类型二
3 类型三
......
firmInfo 公司信息表
Id name url
1 联想 www....
1 三星 www....
1 诺基亚 www....

advertiseInfo 广告位表
id addressId firmTypeId firmId
1 2 1 1
...........

目前设置为:每一个公司类型对应的每一个地址允许5个广告位,问:怎样写sql语句查询每个_类型-地址_下还剩余几个广告位?


作者: jdazui   发布时间: 2011-06-14

SQL code
select a.name as 地址,b.name as 类型,5-count(*) as 剩余广告位
from addressinfo a inner join advertiseinfo on a.id=b.addressid
inner join firmtypeinfo c on c.id=b.firmtypeid
group by a.name,b.name

作者: qianjin036a   发布时间: 2011-06-14

select 
a.name as 地址,
b.name as 类型,
5-count(*) as 剩余广告位
from addressinfo a inner join advertiseinfo b 
on a.id=b.addressid
inner join firmtypeinfo c on c.id=b.firmtypeid
group by a.name,b.name
--------------------
支持楼上,貌似晴天少写了个别名。

作者: maco_wang   发布时间: 2011-06-14

支持楼上两位,貌似两位还没吃饭!

SQL code

select  
a.name as 地址,
b.name as 类型,
5-count(*) as 剩余广告位
from addressinfo a inner join advertiseinfo b  
on a.id=b.addressid
inner join firmtypeinfo c on c.id=b.firmtypeid
group by a.name,b.name


作者: AcHerat   发布时间: 2011-06-14

SQL code
select  
  a.name as 地址,
  b.name as 类型,
  5-count(*) as 剩余广告位
from
  addressinfo a ,advertiseinfo b  ,firmtypeinfo c
where
  a.id=b.addressid
and
  c.id=b.firmtypeid
group by
  a.name,b.name

作者: fredrickhu   发布时间: 2011-06-14