2025年7月29日
摘要:
解題思路: 先按dt, result分組,然后用case when把列轉(zhuǎn)成行,最后sum起來(lái)。 select dt, sum(case when result='win' then cnt else 0 end) as win, sum(case when result='loss' then cn
閱讀全文
posted @ 2025-07-29 19:21
dw2nn
閱讀(8)
推薦(0)
摘要:
思路: 1)使用開窗函數(shù),按照用戶分組,按照日期排序 lead(login_dt, 4, -1) over(partition by user_id order by login_dt) as num lead的意思是把一個(gè)用戶的一個(gè)login_dt,往前移動(dòng)4行,如果沒有可以移動(dòng)的login_dt
閱讀全文
posted @ 2025-07-29 18:40
dw2nn
閱讀(22)
推薦(0)
2025年7月8日
摘要:
1. 根據(jù)表A, 表B,計(jì)算表C select coalesce(A.dt, B.dt) as dt, coalesce(A.colA, 0) as colA, coalesce(B.colB, 0) as colB from A full outer join B on a.dt = b.dt;
閱讀全文
posted @ 2025-07-08 18:53
dw2nn
閱讀(5)
推薦(0)
2025年7月7日
摘要:
原始sql的寫法如下,可以跑成功但是跑了40分鐘。 select user_id, site_id, cc_id from tbl_1 left join tbl_2 on tbl_1.id = tbl_2.id; 查看job details, 發(fā)現(xiàn)其中一個(gè)stage跑了40分鐘,但是這個(gè)stage
閱讀全文
posted @ 2025-07-07 17:01
dw2nn
閱讀(4)
推薦(0)
摘要:
窗口函數(shù)不改變?cè)紨?shù)據(jù),只在原表上新增字段,并在新增字段實(shí)現(xiàn)結(jié)果,為每一行都返回一個(gè)結(jié)果。 一、排名窗口函數(shù) row_number() over(partition by xxx order by xxx desc/asc) 窗口內(nèi)記錄的唯一序號(hào),沒有重復(fù)值 rank() over(partitio
閱讀全文
posted @ 2025-07-07 13:16
dw2nn
閱讀(23)
推薦(0)
2025年7月4日
摘要:
工作中實(shí)現(xiàn)了一張表的設(shè)計(jì)并且數(shù)據(jù)也已經(jīng)跑出來(lái)了,接下來(lái)怎么對(duì)這張表做數(shù)據(jù)質(zhì)量的監(jiān)控,來(lái)防止數(shù)據(jù)丟失/錯(cuò)誤的出現(xiàn)? 下面列幾個(gè)常用的例子: 1.DQ:PK duplicate check, pk=slr_id+dt with t as (select slr_id, dt, count(1)from
閱讀全文
posted @ 2025-07-04 10:33
dw2nn
閱讀(7)
推薦(0)
2024年12月5日
摘要:
假如想刪除某個(gè)特定日期前的分區(qū),可以參考下面語(yǔ)句: alter table table_name drop partition (dt<'20231201') purge;
閱讀全文
posted @ 2024-12-05 14:59
dw2nn
閱讀(162)
推薦(0)
2024年10月16日
摘要:
1. 一般常用的有5種(textfile, sequencefile, rcfile, orc, parquet),默認(rèn)的存儲(chǔ)格式是textfile。 2. 5種存儲(chǔ)格式的區(qū)別 存儲(chǔ)格式文件存儲(chǔ)編碼格式建表指定 textfile 將表中的數(shù)據(jù)在hdfs上以正常文本的格式存儲(chǔ),下載后可以直接查看。 s
閱讀全文
posted @ 2024-10-16 15:41
dw2nn
閱讀(282)
推薦(0)
2024年9月10日
摘要:
當(dāng)多個(gè)開發(fā)人員同時(shí)更改一個(gè)文件時(shí),就有可能會(huì)遇到?jīng)_突。 1. 檢測(cè)沖突 git fetch upstream之后,git merge upstream/master會(huì)檢查是否存在沖突,如果存在,會(huì)提示哪些文件存在CONFLICT 2.解決沖突 打開沖突的文件,可能會(huì)有 或者>>>>>>>的行,刪掉。
閱讀全文
posted @ 2024-09-10 14:18
dw2nn
閱讀(36)
推薦(0)
2024年9月5日
摘要:
一、fork遠(yuǎn)程倉(cāng)庫(kù),將會(huì)在你的GitHub賬號(hào)中創(chuàng)建一個(gè)副本 1. 找到你想要的github倉(cāng)庫(kù),點(diǎn)擊Fork按鈕 2. 選擇相應(yīng)的Owner和想要clone的上游原始倉(cāng)庫(kù)的repo name, 點(diǎn)擊Create fork 3. fork創(chuàng)建成功(大概幾秒鐘就好了) 二、fork倉(cāng)庫(kù)同步上游倉(cāng)庫(kù)
閱讀全文
posted @ 2024-09-05 11:09
dw2nn
閱讀(2039)
推薦(0)