grouping sets,在乙個 group by 查詢中,根據不同的維度組合進行聚合,等價於將不同維度的 group by 結果集進行 union all
cube,根據 group by 的維度的所有組合進行聚合
rollup,是 cube 的子集,以最左側的維度為主,從該維度進行層級聚合。
select order_id, departure_date, count(*) as cntfrom order_info
group by order_id, departure_date
grouping sets (order_id,(order_id,departure_date));
---- 等價於以下
group by order_id union all group by order_id,departure_date
select order_id, departure_date, count(*) as cntfrom order_info
group by order_id, departure_date
with cube;
---- 等價於以下
select count(*) as cnt from order_info
union all group by order_id
union all group by departure_date
union all group by order_id,departure_date
select order_id, departure_date, count(*) as cntfrom order_info
group by order_id, departure_date
with rollup;
---- 等價於以下
select count(*) as cnt from order_info union all group by order_id
union all group by order_id,departure_date
mongodb按不同時間粒度聚合查詢
在使用mongodb時需要按照不同的時間粒度來對資料處理 粒度為 日 周 月 在使用時遇見了一些耽誤時間的事情 整理一下 具體語法如下 db.collection.aggregate 開始的時候我選擇了 dayofyear week month 但是執行的時候發現 week 並不是遵循國人的習慣以周...
不同的有序陣列合併
有序陣列合併 void orderlistmerge int b self printlist a length alen self printlist b length blen int result 14 int p 0,q 0,i 0 p為a陣列下標 q為b陣列下標,i為合併陣列下標 任意子陣...
js陣列合併方法 總結
concat 方法將傳入的陣列或非陣列值與原陣列合併,組成乙個新的陣列並返回。該方法會產生乙個新的陣列,但並不改變原陣列。arr1 1,2 arr2 aa as console.log arr1.concat arr2 1,2,aa as 或console.log concat arr1,arr2 ...