这个比较简单吧,一段天数如果超过7天的话,肯定包含周六和周日,其次,找到开始时间,循环加1,一个一个找to_char(date1, 'day'),判断是周六或者周日,也不是很费事
你好!select count( case when to_char(dt,'DY')='星期六' or to_char(dt,'DY')='星期日' then 1 else 0 end) as cnt from tb where dt between a an b仅代表个人观点,不喜勿喷,谢谢.
select to_char(to_date('你要判断的日期','yyyymmdd' ),'day') from dual
declare @days int --你要加的天数declare @i int --循环条件declare @k int --判断星期几条件declare @start datetime --开始日期-- 赋值set @days = 6 set @i = 1set @start = '2015-10-29'while @i 评论0 0 0
这个问题的前题是需要建立一个表(存放休息日和节假日) holidays,里面存放了所有休息日等SQL中提供了一些日期计算函数如dateadd,可对日期进行递增操作.基本代码如下:declare @startdate datetime='2015-9-10'declare @enddate datetime='2015-10-10'declare @days int=0set @startdate=dateadd(day,@startdate,1) --给开始日期加1天while(@startdate 评论0 0 0
我的日期是一个字符串型字段,形如:20100812 这种形式.
一个时间段应该有起始和结束2个时间点吧?如:起始点1,起始点2,结束点2,结束点1.看明白了没
MS SQL Server 中日期型常量格式 'YYYY-MM-DD' 你要把C#里面的变量值转成这样的格式写到SQL语句中.而且要注意单引号!
select sum (出勤) as 出勤总天数 from table_name where 星期=('一','二','三','四','五')出勤总天数、星期是你的数据库表中的列名
where logintime>convert(varchar,getdate(),23)一般是截取年月日进行比较,字符会自动隐式转换,添加00:00:00.000格式的