Re: [SQL ] 滾動計算並回傳
※ 引述《chippclass (善假狼賺錢中)》之銘言:
: 我從來沒接觸過10萬筆以上資料的案例
: 所以我本來是想
: 240萬 join 1600萬 的資料
: 你應該是會用MOONY135的分批跑排程之類的做法?
: 不過若是10萬筆以下的資料要跑的話應該還是能一句sql跑完所以來解一下題目
對,我還是會用MOONY135的建議,分批跑排程處理
我只是出於個人的強迫症,想要知道能不能夠一句處理
這樣後面跑分批應該也會比較快一點 (?)
非常感謝你把整個邏輯脈絡呈現出來
我確定我應該是有看懂,也讓我學到不少知識
雖然最終我修改了code在SAS環境運作,還是沒辦法解決重複的問題
: 其中一個比較讓我意外的是裡面join出來的表格居然外面的可以select
:
: 前面我說過會有這個錯誤:ERROR : Duplicate column name 'sid'
:
: 在 mariaDB 中就直接錯誤,我覺得是合理的
:
: 不然 select sid 到底是要撈哪個 sid ?
:
: 而你的 SAS sql 沒報錯,繼續跑出結果,我猜是不是不同資料庫對語法的行為不同?
:
: 莫非是因為你是 select * 而不是 select sid,
: 所以 SAS sql 就把兩個 sid 都撈出來不報錯?
:
: 如果是這樣的話,那之後還有 GROUP BY date,sid,doctor
:
: 這個 group by sid 的又是哪個 sid ?
fig.1
https://imgur.com/MKsarjC
這個是SAS的行為,其實也是有跳出警示,但只要沒有嚴重到無法執行
它還是會把結果跑給你
它應該是以前面那個SID為主
這個是把b.SID改名為s的結果
fig.2
https://imgur.com/z9mmuVX
fig.1 893 行 NOTE 最下面那行可以看到 295 rows and 40 columns
fig.2 901 行 NOTE 最下面那行是 295 rows and 41 columns
結果沒有改變,只多了1 column named s (就是找到的每一個b.SID)
(這是只測試1筆a.SID的結果)
這是測試SID的原始資料樣子
fig.3
https://imgur.com/XIXCuEl
3/24 還有看醫生,25號之後就完全沒再回診,所以沒有DoctorID
這個是fig.2 code跑出的結果
https://imgur.com/vVp6aeN
3/24 找到281筆b.SID,就變成281行資料
https://imgur.com/D9OEJN1
最後14筆沒有看醫生,所以也找不到b.SID
還是很感謝你讓我知道這樣寫法的邏輯脈絡
--
不 嗎 ▲│ ◤ ˋ │ │ ◤ ˋ │ ▎ φhacoolman
不 現在簽博班的話, 嗎 /│ ● │____ │ ● │\ ▲ alan99
不 碩班就能畢業囉! 嗎 ▊/ │ ◣ ◤ │ │ ◣ ◤ │ \ ▏ 簽嗎不簽嗎
不 嗎 │ ╰────╯ ╰────╯ │ ▍ 簽嗎不簽嗎
不簽嗎不簽嗎不簽嗎不◥嗎▊ \ │ ▎ 嗎不簽嗎
不簽嗎不簽嗎不簽嗎不簽 \ ︶︶ / ▏ 嘿~嘿~嘿~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 120.126.32.197 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1602833786.A.7F1.html
※ 編輯: Wengboyu (120.126.32.197 臺灣), 10/16/2020 15:38:15
→
10/17 15:59,
4年前
, 1F
10/17 15:59, 1F
→
10/17 16:37,
4年前
, 2F
10/17 16:37, 2F
推
10/18 19:45,
4年前
, 3F
10/18 19:45, 3F
→
10/18 19:46,
4年前
, 4F
10/18 19:46, 4F
→
10/18 19:47,
4年前
, 5F
10/18 19:47, 5F
→
10/18 19:47,
4年前
, 6F
10/18 19:47, 6F
→
10/19 09:33,
4年前
, 7F
10/19 09:33, 7F
→
10/20 00:07,
4年前
, 8F
10/20 00:07, 8F
→
10/20 00:09,
4年前
, 9F
10/20 00:09, 9F
討論串 (同標題文章)
Database 近期熱門文章
PTT數位生活區 即時熱門文章