文章詳情頁
mysql - 用sql或者pandas讓一個表按照另一個表補全數據。
瀏覽:92日期:2022-06-11 18:18:28
問題描述
如圖,圖1是各個地鐵站在各個時刻的進站人數,由于是模擬真實數據,像七里莊在5點沒有人進站,所以就沒有數據記錄,而圖2是完整的時段表,從5點到23點,每15分鐘一段,現在想讓圖1 的每個地鐵站按照圖2的時刻表進行補全,如果這一時刻該地鐵站沒有記錄,就證明沒有人進站,進站人數就默認為0。
如果能用sql最好,用pandas也可以。但我不知道怎么做到,向大家求助。
問題解答
回答1:按照你現在這樣的表結構的化,圖2主表,左連接圖1表,條件起始時間=起始時間,結束時間=結束時間。查詢列圖2的起止時間,圖1的人數
假設有個站點表記錄所有站點基本信息。
Seletc Site,Start,End,Cnt from( select Site,Start,End,timeKey from SiteTbl,TimeZone) aleft join (.....) b on a.Site=b.Site a.timeKey = b.timeKey回答2:
select table2.起始時間, table2.結束時間, ifnull(table1.進站人數, 0) '進站人數'from table2left join table1 on table1.起始時間=table2.起始時間 and table1.結束時間=table2.結束時間
PS:如果可以請把第二張加一個站名這個字段.
相關文章:
1. 視頻文件不能播放,怎么辦?2. 前端 - 誰來解釋下這兩個 CSS selector 區別3. javascript - 求幫助 , ATOM不顯示界面!!!!4. javascript - ios返回不執行js怎么解決?5. python - 爬蟲模擬登錄后,爬取csdn后臺文章列表遇到的問題6. html5 - HTML代碼中的文字亂碼是怎么回事?7. python bottle跑起來以后,定時執行的任務為什么每次都重復(多)執行一次?8. mysql - 分庫分表、分區、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處9. javascript - vue2如何獲取v-model變量名10. javascript - angular使從elastichearch中取出的文本高亮顯示,如圖所示
排行榜
