題目:
乙個月統計一次每個雇員去了哪些國家
user_name region
tom india
jerry usa
mike england
marry holland
但是有一張彙總表
user_name least_region arrived_region_count
雇員名 最新去的國家 已經到過多少個國家
tom india 4
jerry usa 6
mike england 10
marry holland 11
已經到過多少個國家
的計算規則是 如果上個月 這個表的資料還是
user_name least_region arrived_region_count
雇員名 最新去的國家 已經到過多少個國家
tom greece 3
jerry sweden 4
mike switchland 9
marry germany 10
例如tom上個月還只到了3個國家,那麼這個月需要就是 3+1,因為tom這個月又去了乙個新的國家,印度。
解答:/*
用user_name欄位將a和b表關聯,
若可關聯到則將b表中的記錄更新到a,
若沒有關聯到,則將b中「多出」的記錄插入a表
*/merge agg_table a
using month_table m
on (a.user_name = m.user_name) --用user_name欄位將a和b表關聯,
when matched then --若可關聯到則將b表中的記錄更新到a
update
set last_region = m.region,
arrived_region_count = arrived_region_count + 1
when not matched then --若沒有關聯到,則將b中「多出」的記錄插入a表
insert
(user_name, least_region, arrived_region_count)
values
(m.user_name, m.region, 1);
pandas中merge的用法
pandas中的merge和concat類似,但主要是用於 兩組有key column的資料 統一索引的資料.通常也被用在database的處理當中。import pandas as pd 定義資料集並列印出 left pd.dataframe right pd.dataframe print le...
SQL中Merge的用法
merge關鍵字是乙個神奇的dml關鍵字。它在sql server 2008被引入,它能將insert,update,delete簡單的並為一句。msdn對於merge的解釋非常的短小精悍 根據與源表聯接的結果,對目標表執行插入 更新或刪除操作。例如,根據在另乙個表中找到的差異在乙個表中插入 更新或...
SQL中Merge的用法
merge關鍵字是乙個神奇的dml關鍵字。它在sql server 2008被引入,它能將insert,update,delete簡單的並為一句。msdn對於merge的解釋非常的短小精悍 根據與源表聯接的結果,對目標表執行插入 更新或刪除操作。例如,根據在另乙個表中找到的差異在乙個表中插入 更新或...