我想计算一个月的周数,我想计算一下它的周数是否在奇数或偶数周我怎样才能在TSQL中得到这个? 谢谢大家!TSQL计算月份的月份数
6
A
回答
6
这给你的日起一个月内@dt的一周。有一个使用CASE语句上的表达,显示无论是“奇”或“偶”第2个栏
declare @dt datetime
set @dt = GETDATE()
select
WhichWeekOfMonth = datepart(wk, @dt)
- datepart(wk,dateadd(m, DATEDIFF(M, 0, @dt), 0)) + 1,
case when (datepart(wk, @dt)
- datepart(wk,dateadd(m, DATEDIFF(M, 0, @dt), 0)) + 1) % 2 = 1
then 'Odd' else 'Even' end
0
试试这个:
SELECT (DATEPART(d, '02/07/2011')/7)%2 AS WeekNo, --Replace your date column in place of '02/07/2011'
CASE (DATEPART(d, '02/07/2011')/7)%2
WHEN 1 THEN 'Odd'
ELSE 'Even'
END AS WeekType
+0
给出了错误的答案(按我的定义 - 见我答案) - 它表示它在第1周 – RichardTheKiwi 2011-02-07 23:47:42
+0
上面的查询给出了给定的日期是一周中哪一周是偶数周还是奇数周... – Chandu 2011-02-07 23:49:13
4
它会给你一周号每个月
declare @dates datetime
select @dates='2011-03-22'
SELECT datepart(dd,@dates), ceiling (cast(datepart(dd,@dates)as numeric(38,8))/7)
3
怎么样东西可读,轻松定制和可预测...
DECLARE @dayOfMonth AS INT;
SET @dayOfMonth = DATEPART(DAY, '3/14/2013');
SELECT CASE
WHEN @dayOfMonth < 8 THEN 1
WHEN @dayOfMonth < 15 THEN 2
WHEN @dayOfMonth < 22 THEN 3
ELSE 4
END AS weekOfMonth;
0
我认为这使得该方法非常明显:
DECLARE @DayOne DATETIME
DECLARE @ThisDay DATETIME
SET @ThisDay = GETDATE()
SET @DayOne = CAST(CAST(MONTH(@ThisDay) AS VARCHAR) + '/1/' + CAST(YEAR(@ThisDay) AS VARCHAR) AS DATETIME)
SELECT (DATEPART(wk, @ThisDay) - DATEPART(wk, @DayOne) + 1) AS [Week Of Month]
SQL Server 2012中有一个可以用于更容易建立DayOne字符串CONCAT功能:
DECLARE @DayOne DATETIME
DECLARE @ThisDay DATETIME
SET @ThisDay = GETDATE()
SET @DayOne = CAST(CONCAT(MONTH(@ThisDay), '/1/', YEAR(@ThisDay)) AS DATETIME)
SELECT (DATEPART(wk, @ThisDay) - DATEPART(wk, @DayOne) + 1) AS [Week Of Month]
相关问题
- 1. 计算月份
- 2. Tableau月份之间的月份计数
- 3. 计算月份统计
- 4. 计算月份和年份的日期
- 5. 如何计算epoch月份?
- 6. 计算月份寿命列
- 7. nHibernate按年份和月份计算
- 8. 计算函数与月份换算
- 9. 使用Codeigniter计算特定月份的所有月份
- 10. 月份名称到月份编号 - 03月份是2月份?
- 11. 计算给定月份的周数
- 12. pandas:计算月份的发生次数
- 13. 计算同一月份的行数
- 14. 在Oracle SQL中计算月份变化月份
- 15. 试图计算月份月份百分比增加/减少
- 16. 减去月份的月份
- 17. 月份分组 - 每月获得计数
- 18. 在SQL Server中获取当前月份数量,1月份为1月份,12月份为12月份
- 19. 如何计算未完成月份的月平均数
- 20. SQL Date_Format月份数到月份名称
- 21. 月份数到月份名称
- 22. Codeigniter使用月份计数?
- 23. Android日历计数月份
- 24. MySQL:计数连续月份
- 25. 计算Google BigQuery中的月份差异
- 26. 根据Julian日历计算的月份
- 27. 月份计算的最后一天
- 28. 12个滚动月份的MDX计算
- 29. 计算月份变化的时差
- 30. Solr计算月份的最后一天
列表中的一些样本日期和预期产出 – RichardTheKiwi 2011-02-07 23:44:54