CREATE FUNCTION [dbo].[getCountOfWorkdaysOfMonth](@year_in VARCHAR(4), @month_in VARCHAR(2)) --year_in 为四位年,month_in为两位月returns NUMERIC --使用函数的前要先写 set datefirst 1 这一句,让一周的第一天为1,即周一ASBEGIN DECLARE @firstDayOfMonth VARCHAR(10) --该月的第一天 yyyy-MM-dd格式 DECLARE @howManyDaysOfMonth NUMERIC --该月有多少天 DECLARE @dayCusor NUMERIC --循环用的迭代变量 DECLARE @countOfWorkdaysOfMonth NUMERIC --该月的工作日总数,初始化为0 DECLARE @dayOfADay VARCHAR --某天为周几 用来判断某天是否为周末 DECLARE @dateOfADay DATETIME --某天的日期 用来获取某天为周几,初始化为该月第一天的日期 SET @countOfWorkdaysOfMonth = 0 SET @dayCusor = 1 SET @firstDayOfMonth = @year_in + '-' + @month_in + '-' + '01' SET @dateOfADay = CONVERT(DATETIME,@firstDayOfMonth,121) SET @howManyDaysOfMonth = CAST(DAY(DATEADD(MONTH, DATEDIFF(MONTH, 0, @dateOfADay) + 1, 0) - 1) AS NUMERIC) WHILE @dayCusor <= @howManyDaysOfMonth BEGIN SET @dayOfADay = DATEPART(WEEKDAY,@dateOfADay) IF @dayOfADay <> '6' AND @dayOfADay <> '7' BEGIN SET @countOfWorkdaysOfMonth = @countOfWorkdaysOfMonth + 1 END SET @dateOfADay = @dateOfADay + 1 SET @dayCusor = @dayCusor + 1 END RETURN @countOfWorkdaysOfMonthEND
详细解决方案
SQLSERVER 得出当前月的工作日天数(没考虑国家法定假日,只排除周六周日)
热度:164 发布时间:2016-05-05 09:50:54.0
相关解决方案
- [Microsoft][SQLServer 2000 Driver for JDBC]No ResultSet set was produced.多谢
- com.microsoft.sqlserver.jdbc.SQLServerException: 列名 n_id 无效。解决方案
- com.microsoft.sqlserver.jdbc.SQLServerException: 该联接已关闭
- Cannot load JDBC driver class 'com.microsoft.jdbc.sqlserver.SQLServerDriver'解决方法
- com.microsoft.sqlserver.jdbc.SQLServerException: 将截断字符串或二进制数据。该怎么解决
- com.microsoft.sqlserver.jdbc.SQLServerException: 没为参数号 2 设置值
- com.microsoft.sqlserver.jdbc.SQLServerException: 用户 'sa' 登录失败。该用户与可托 SQL Server
- java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
- [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.解决思路
- java sqlserver jdbc有关问题
- asp.net mvc3.0+sqlserver 高并发日记系统解决方案,求思路
- asp.net +sqlserver 能不能 读取一次数据库,然后按条件输出,该如何解决
- sqlserver bulk insert 远道导入数据!
- sqlserver 2005 的問題,该如何处理
- sqlserver 数据库备份,该怎么处理
- 未能加载资料或程序集“Microsoft.SqlServer.Replication”或它的某一个依赖项。试图加载格式不正确的程序
- MS sqlserver 查询有关问题,
- 取出表A中第31到第40记录(SQLServer, 以自动增长的ID作为主键, 注意:ID可能不是连续的。解决思路
- Microsoft.SqlServer.Replication.dll 引发的IIS异常
- C# SQLServer 企业应用解决思路
- sqlserver like '%,3,%' 有关问题。
- sqlserver 建数据库时表示时间,金额和重量的字段用什么数据类型好,有人说全用nvarchar因为好操作,求解,该怎么解决
- sqlserver 表的ID有关问题
- 请教mysql 跟 sqlserver 相似吗
- sqlserver dri权限是指什么?解决办法
- sqlserver ntext存储长度的有关问题
- asp.net sqlserver 怎么用一段代码来实现查询功能
- 关于SQL过滤,仅过滤单引号是否可以防止注入(access,sqlserver),该如何处理
- 哪位兄弟推荐个易于整合到网站用户的bbs源码(asp.net2.0+sqlserver),该如何解决
- 大型 OA C#+SQLSERVER 源码,该怎么解决