當前位置:首頁 » 編程語言 » sql時間交集

sql時間交集

發布時間: 2024-02-02 14:26:20

sql合並多個時間段

如果是oracle 我會使用一個臨時表,包含人員,持續開始時間,持續結束時間,處理任務,處理方法如下

  • 首先取出某員工一天的所有工作記錄,按開始時間排序後逐條處理

  • 首先將第一條記錄插入到臨時表中,持續開始時間為 開始時間,持續結束時間為結束時間,處理任務為1;

  • 在取到後續記錄時,作如下處理

  • 如果開始時間 > 臨時表中已經存在的所有結束時間,則新增一條記錄,與第一條處理方式一致;

  • 如果開始時間 <=臨時表中已經存在的某一結束時間處理如下

  • 如果 結束時間 <=臨時表中已經存在的某一結束時間,不作任何插入和更新;

  • 如果 結束時間 >臨時表中已經存在的某一結束時間,更新臨時表中對應記錄為當前取到的結束時間;

  • 按照以上規則直至所有數據均處理完成,此時臨時表中獲得的是不重疊的所有工作時間,採用group 即可獲得一天是實際工作時間,進而可以求出休息時間。

熱點內容
qq電腦聊天緩存不安全 發布:2025-09-19 03:43:38 瀏覽:361
大話2腳本製作 發布:2025-09-19 03:25:47 瀏覽:497
腳本精靈用的什麼語言 發布:2025-09-19 03:21:32 瀏覽:847
微型機常用的存儲器 發布:2025-09-19 03:18:17 瀏覽:469
迷你世界腳本編輯代碼在哪裡 發布:2025-09-19 03:17:40 瀏覽:374
我的世界110伺服器的天域組織 發布:2025-09-19 02:49:36 瀏覽:797
為什麼安卓手機使用久了會變卡 發布:2025-09-19 02:49:36 瀏覽:876
國家校時伺服器ip 發布:2025-09-19 02:45:18 瀏覽:922
安卓補幀軟體在哪裡下 發布:2025-09-19 02:45:17 瀏覽:33
安卓移機蘋果怎麼操作 發布:2025-09-19 01:58:55 瀏覽:164