tSQL函数?每月工作时间要求



问个小问题,

是否有一个函数,计算所需的小时每月可用的SQL?如果不是假日柜台呢?

我想在SQL中创建一个表,它是一个日历,看起来像这样:

Year    Month    Required_Hours
2011    1        *
2011    2        *

其中函数将计算*值

——编辑——

要求工作时间:每天8小时

不计算的日子:星期六和星期日+假日。

在MySQL中你可以这样做选择24 * DAYOFMONTH (LAST_DAY (CONCAT("-",月,' - ',1)))

它将返回一个月的天数乘以24,24等于该特定月份的小时数。也许在TSQL中有一些类似的功能?

简短的回答:没有内置的SQL函数

长话短说:这显然取决于一个月有多少假期。处理这种情况的一种方法是使用一个表来存储普通假日,并从总数中减去这些假日。除此之外,您可能需要考虑每个员工的个人假期/休假天数,这将是另一个表。然而,一旦你有了这些,它就没有那么糟糕了:使用DATEPART(weekday, *date*)来查找日期是星期六还是星期天

最新更新