MS SQL Server中對日期的一些常用處理——持續更新
2015-02-27 08:47
337 查看
注:以下表達式中的0其實是表示日期1900-1-1
1.當天的零點
以上DATEDIFF(DAY,0,GETDATE())表示先計算當天與1900-1-1之間相關的天數,假設這裏記為N天,然後再通過DATEADD計算1900-1-1加上N天就得出當天的日期,時間為零點。
2.當月的第一天
原理同上,只是計算單位由DAY變成MONTH。
3.當月的最後一天
原理是先計算出下個月的第一天,然後再減去一天。
4.今天是星期幾
5.今天是一周中的第幾天
但是可以通過以下語句來改變這個默認值,如以下修改一周的第一天為星期一:
還可以通過以下語句查看當前的DATEFIRST的值:
1.當天的零點
SELECT DATEADD(DAY,DATEDIFF(DAY,0,GETDATE()),0)
以上DATEDIFF(DAY,0,GETDATE())表示先計算當天與1900-1-1之間相關的天數,假設這裏記為N天,然後再通過DATEADD計算1900-1-1加上N天就得出當天的日期,時間為零點。
2.當月的第一天
SELECT DATEADD(MONTH,DATEDIFF(MONTH,0,GETDATE()),0)
原理同上,只是計算單位由DAY變成MONTH。
3.當月的最後一天
SELECT DATEADD(MONTH,DATEDIFF(MONTH,0,GETDATE())+1,0)-1
原理是先計算出下個月的第一天,然後再減去一天。
4.今天是星期幾
SELECT DATENAME(WEEKDAY,GETDATE()) --輸出:星期五
5.今天是一周中的第幾天
SELECT DATEPART(DW,GETDATE()) --默認一周的開始是星期天,所以1表示星期天,7表示星期六
但是可以通過以下語句來改變這個默認值,如以下修改一周的第一天為星期一:
SET DATEFIRST 1
還可以通過以下語句查看當前的DATEFIRST的值:
SELECT @@DATEFIRST
相关文章推荐
- MS SQL SERVER 的一些有用日期
- (转)MS SQL Server一些问题的解答
- MS SQL SERVER 2005的一些书的范例章节下载
- MS SQL SERVER 2000一些有用的T-SQL。
- MS SQL Server中的CONVERT日期格式化大全
- MS SQL Server中的CONVERT日期格式化大全
- Ms sql server 的一些资料
- MS SQL Server中的 CONVERT 日期时间 格式化大全
- MS SQL Server中的CONVERT日期格式化大全
- MS SQL Server日期计算
- MS SQL Server一些问题的解答[转]
- MS SQL Server中的日期格式化大全
- SQL Server 2000 一些有用的SQL语句搜集整理(持续更新 )
- MS SQLServer数据库开发常用汇总(陆续添加..)
- MS SQL Server中的日期格式化大全
- ms sqlserver 常用T-sql语句与函数
- MS SQL Server和Oracle的常用函数对比
- MS SQL Server中的日期格式化大全
- 获取服务器的系统日期,出错时采用客户机系统时间。本函数支持MS SQL Server 版本。
- MS SQL SERVER 启用对系统目录的特殊更新