我需要一些帮助来输出这样的输出:
CityName
CITY A
CITY B
CITY C
CITY A
CITY A
CITY A
CITY C
从这个例子中,每个城市的数量是:CITY A = 4,CITY B = 1,CITY C = 2
如何在其旁边添加每个CityName的 (嵌套)计数 ,以便输出如下所示:
CityName CityCount
CITY A 4
CITY B 1
CITY C 2
CITY A 4
CITY A 4
CITY A 4
CITY C 2
任何反馈都不仅仅是赞赏!
我的下表包含以下字段:
CitiesList - > CityName | 镇 | 日期的
表 CitiesList 的输出如下所示:
CITYNAME | 镇 | 日期
CITY A TOWN B 2012年7月10日
CITY A TOWN D 2012年7月10日
CITY B TOWN C 2012年7月11日
CITY C TOWN C 2012年7月11日
CITY D TOWN 2012年7月12日
CITY D TOWN C 2012年7月13日
CITY D TOWN B 2012年7月13日
CITY E TOWN C 2012年7月13日
.....
我想在此输出中添加一个额外的字段( TownCount ),其中每个TOWN在垃圾邮件时间中出现的次数(本例中为7月10日 - 7月13日)。输出应如下所示:
CITYNAME | 镇 | 日期 | TownCount
CITY A TOWN B 2012年7月10日2
CITY A TOWN D 2012年7月10日1
CITY B TOWN C 2012年7月11日4
CITY C TOWN C 2012年7月11日4
CITY D TOWN A 2012年7月12日1
CITY D TOWN C 2012年7月13日4
CITY D TOWN B 2012年7月13日2
CITY E TOWN C 2012年7月13日4
.....
答案 0 :(得分:4)
您没有提供有关您正在使用的系统类型的详细信息,但在SQL中您可以使用:
select t1.cityname, t2.CityCount
from yourtable t1
left join
(
select count(*) CityCount, cityname
from yourtable
group by cityname
) t2
on t1.cityname = t2.cityname
根据您的修改,您似乎想要执行以下操作:
select t1.cityname, t1.town, t1.date, t2.TownCount
from yourtable t1
left join
(
select count(*) TownCount, Town
from yourtable
group by Town
) t2
on t1.town = t2.town