【发布时间】:2011-09-29 22:45:57
【问题描述】:
我尝试四处寻找类似的解决方案,但对我来说似乎没有多大帮助。我有一张这样的桌子:
locations => |longname|name|locations|
topics => |longname|name|tag|
我正在尝试获取特定位置的特定 atag 的长名称计数。到目前为止,我的查询也试图强制重新排序,这就是为什么你会看到 location IN 和 FIELD。但是,如果某个特定标签的位置没有任何人,它会从响应中完全忽略它。我希望它返回 0。我该怎么做?
select count(b.longname) as count, a.location
from `topics` b, locations a
where tag = 'atag' and a.longname = b.longname
and location IN ('Japan', 'France', 'Italy')
group by location
order by FIELD(location, 'Japan', 'France', 'Italy')
【问题讨论】: