計算每月員工住宿的天數

2021-04-25 22:02:49 字數 1369 閱讀 7921

說明:本系統把宿舍管理融合為一體系統處理:宿舍安排,水電費計算,宿舍管理可根據實際情況調配人員,很直觀。最主要的是水電運算:剛開始考察的結果----按每間宿舍每月計算水電,不管是本月離職的,還是剛搬進的,還是月間調到其它宿舍的,都得要考慮計算進去,人工計算的時候,他們一般以10天為乙個運算單位,這就是實際情況。我經過思考:首先計算出每間宿舍只要在這裡住過的員工,不管是剛搬進的,還是離職搬出的,住過的天數。這樣,得到每間宿舍的乙個基數:即每間宿舍所有員工住宿的天數,再用水電總費用除以基數得出每天的平均基數,每個人的住宿天數和平均基數相乘就可以得出每人的水電費。 

2009、3 龔德權

主要資料庫指令碼**:計算每月員工住宿的天數

declare

@param1 varchar(20)

set @param1='2009-03'

select 入住人,name,gender,部門,title,離職,宿舍編號,宿舍床號,宿舍性質,搬入時間,搬出時間,a.備註,時間段

,本月天數

,(case when 本月天數<=時間段 then 本月天數

when 本月天數》時間段 then 時間段

end) 住宿天數,@param1 as 年月

from (select  宿舍編號,宿舍床號,宿舍性質,入住人,搬入時間,搬出時間,備註,

datediff(dd,

(case when 搬入時間<=cast(@param1+'-01' as datetime) then cast(@param1+'-01' as datetime)

when 搬入時間》cast(@param1+'-01' as datetime) then 搬入時間

end),搬出時間) as 時間段,

datename(dd,dateadd(dd,-1,dateadd(mm,1,cast(@param1+'-01' as datetime)))) as 本月天數

from [kaoqing].[dbo].[宿舍日誌] where  年月=@param1

union all

select 宿舍編號,宿舍床號,宿舍性質,入住人,搬入時間,搬出時間,備註,

datediff(dd,搬入時間,dateadd(dd,-1,dateadd(mm,1,cast(@param1+'-01' as datetime)))) as 時間段,

datename(dd,dateadd(dd,-1,dateadd(mm,1,cast(@param1+'-01' as datetime)))) as 本月天數

from [kaoqing].[dbo].[宿舍管理]where 入住人<>'' and 備註 not like '%中午休息%'

) a,renshi_bm where renshi_bm.badgenumber=a.入住人

輸出每月的天數 華為機試題

輸入含年月的字串,僅支援資訊格式為mm yyyy mm 月份,yyyy 年份 根據該訊息輸出當月總天數。注意考慮閏年。1 公曆年份是4的倍數且不是100的倍數。2 公曆年份是400的倍數 例如,2000年是閏年,1900則是平年。閏年2月份為29天,平年2月份為28天。執行時間限制 無限制 記憶體限...

天數換算月份 Js 計算指定月份的天數

問題 怎麼在已知年份和月份的情況下,計算出這個月一共有多少天?這個有兩種計算方案 方案一因為月份總數是固定的,而每月的天數其實也是已知的,所以可以使用陣列儲存所有月份天數,然後根據月份去陣列中取就行了,大致如下 var arr 31,29,31,30,31,30,31,31,30,31,30,31 ...

每月第一天為星期天的天數

題目內容 根據下列資訊計算在1901年1月1日至2000年12月31日間共有多少個星期天落在每月的第一天上?a 1900.1.1是星期一 b 1月,3月,5月,7月,8月,10月和12月是31天 c 4月,6月,9月和11月是30天 d 2月是28天,在閏年是29天 e 公元年數能被4整除且又不能被...