-2

我已经按照查询使用连接进行处理。除了使用这些计数和连接之外,还有其他选择吗?

select 
    ipd.data_city as city,
    count(distinct f.dim_ipinfo_id) as visitors, 
    count(distinct f.dim_visit_id) as visits,
    count(f.dim_Pageview_id) as pageviews
from fact_table f
left join dim_data ipd on ipd.dim_data_id = f.dim_data_id
where f.dim_member_id = 725
group by city
4

1 回答 1

1

不知道你的目标和数据结构是不容易理解的。
但是乍一看,JOIN似乎是必要的,因为分组是在似乎在 *dim_data* 表上的city字段上完成的。
如果您在 *fact_table* 数据中有一个引用城市的字段,您可以将其用于分组并删除连接,如果没有,您必须坚持使用它。
此外,如果您不需要对城市进行分组,则可以避免加入,但 id 似乎并非如此。

于 2012-11-13T08:35:20.643 回答