日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
SQLServer記錄輪班的實(shí)際操作技巧描述

以下的文章主要向大家描述的是SQL Server記錄輪班的實(shí)際操作技巧,我們是以舉例子的方式來對(duì)SQL Server記錄輪班的實(shí)際操作技巧做一更為詳細(xì)的介紹,以下就是相關(guān)內(nèi)容的具體描述。

創(chuàng)新互聯(lián)建站主營(yíng)土默特左旗網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,App定制開發(fā),土默特左旗h5成都微信小程序搭建,土默特左旗網(wǎng)站營(yíng)銷推廣歡迎土默特左旗等地區(qū)企業(yè)咨詢

例:公司員工采取三個(gè)輪班制度:凌晨0:00到早上8:00為***班,早上8:00到下午4:00為第二班,下午4:00到晚上12:00為第三班。

員工使用電子時(shí)鐘進(jìn)行簽名,這種電子簽名可以自動(dòng)將記錄添加到SQL Server數(shù)據(jù)庫中。但是,有時(shí)候,需要增加一個(gè)夜班;即使這個(gè)輪班發(fā)生在第二天,它仍然會(huì)被認(rèn)為是第三班。

你也許希望根據(jù)輪班對(duì)記錄進(jìn)行分組,但是在你的計(jì)劃中會(huì)有兩個(gè)非常令人頭痛的問題:

(1)不是所有的雇員都是按時(shí)到達(dá)的;

(2)有時(shí)候員工工作的時(shí)間會(huì)比他們的一個(gè)輪班的時(shí)間長(zhǎng)一些。

為了能在你的列表中得到正確的分組,你必須假設(shè)所有的員工能在一個(gè)輪班的開始和結(jié)束時(shí)間之間的任意時(shí)間開始工作。

使用CASE語句是一種解決辦法。Listing A中的SQL語句告訴我們,在創(chuàng)建測(cè)試表沒有錯(cuò)誤的情況下,它是如何工作的。

為了使程序代碼完全準(zhǔn)確的運(yùn)行,你需要在時(shí)間的小窗口中得到每一個(gè)輪班的開始時(shí)間和下一個(gè)輪班的結(jié)束時(shí)間。在剛才的例子中,你可以用'15:59:59.123'這個(gè)值代替@StartTime,然后再重新運(yùn)行代碼。這時(shí)候,你必須在每一個(gè)輪班結(jié)束的分界點(diǎn)上增加999毫秒。

解決方案

這個(gè)例子假設(shè)輪班時(shí)間從來沒有改變過,但是如果改變了輪班時(shí)間該怎么辦呢?你必須仿照這個(gè)例子并根據(jù)改變了的時(shí)間寫出所有的代碼。

一個(gè)更好一點(diǎn)的主意就是,針對(duì)我們的輪班創(chuàng)建一個(gè)表來調(diào)用Shifts的開始時(shí)間和結(jié)束時(shí)間。在這個(gè)表中,你可以修改Case語句來查找StopTime列。

Listing B中包含了創(chuàng)建Shifts表并向該表中增加記錄的代碼。代碼在一個(gè)輪班中設(shè)置了時(shí)間后,這樣使代碼看上去既簡(jiǎn)單又靈活:

 
 
 
 
  1. DECLARE @StartTime VARCHAR(20) SET @StartTime ='22:59:59' 
  2. SELECTTOP 1 ShiftName FROM ShiftWork.Shifts WHERE Shifts.  
  3. StartTime <= @StartTime ORDERBY StartTime DESC  

我之所以要將輪班記錄進(jìn)行降序排列,是為了避免第三個(gè)輪班的邊界問題。我將用一些測(cè)試案例來論證我的結(jié)論,這些內(nèi)容你可以在Listing C中看到。

實(shí)際上,你可以將這個(gè)邏輯應(yīng)用到TemeCards表的記錄中去,而不需要?jiǎng)?chuàng)建另外的表,也就不需要在表中增加數(shù)據(jù)了。我同樣使用一個(gè)簡(jiǎn)單的變量來論證我的邏輯。

以上的相關(guān)內(nèi)容就是對(duì)SQL Server記錄輪班的技巧的介紹,望你能有所收獲。

上述的相關(guān)內(nèi)容就是對(duì)SQL Server記錄輪班的技巧的描述,希望會(huì)給你帶來一些幫助在此方面。


網(wǎng)站題目:SQLServer記錄輪班的實(shí)際操作技巧描述
網(wǎng)頁網(wǎng)址:http://www.5511xx.com/article/dpesdoi.html