开窗函数+group by案例
CREATE TABLE city_data ( city STRING, random_field STRING ); INSERT INTO city_data (city, random_field) VALUES ('New York', 'example1'), ('Los Angeles', 'example2'), ('New York', 'example3'), ('Chicago', 'example4'); select city , count(1) over() from city_data group by city ; ======================================================================= Los Angeles 3 New York 3 Chicago 3 注释:如上结果 是对整个表作为一个分区, count的值结果都一样,所有数据为1个窗口. ======================================================================== select city , count(1) over(partition by city ) from city_data group by city ; 注释: 这种写法是没任何意义的. 会把所有字段值数量返回 count结果为1 的值. ======================================================================== Los Angeles 1 New York 1 ======================================================================== select city , count(1) over(partition by city ) from city_data ; ======================================================================== Los Angeles 1 New York 2 New York 2 注释:属于正常开窗函数.