我想将SQL查询转换为密码。请问,有什么解决方案可以使GROUP BY成为密码吗?
SELECT dt.d_year,
item.i_brand_id brand_id,
item.i_brand brand,
Sum(ss_ext_discount_amt) sum_agg
FROM date_dim dt,
store_sales,
item
WHERE dt.d_date_sk = store_sales.ss_sold_date_sk
AND store_sales.ss_item_sk = item.i_item_sk
AND item.i_manufact_id = 427
AND dt.d_moy = 11
GROUP BY dt.d_year,
item.i_brand,
item.i_brand_id
ORDER BY dt.d_year,
sum_agg DESC,
brand_id;
答案 0 :(得分:4)
在Cypher中,所有aggregate functions都隐式完成GROUP BY。在WITH / RETURN语句中,任何不属于聚合的列将成为GROUP BY键。
例如
MATCH (n:Person)
RETURN COUNT(n), n.name, n.age
该计数将对具有相同名称和寿命的所有节点进行计数。如果我愿意的话
MATCH (n:Person)
RETURN COUNT(n), n.name, MIN(n.age), MAX(n.age)
我将获得多少个具有相同名字的人,以及该名字的年龄范围。