`
shmilylq
  • 浏览: 57266 次
  • 性别: Icon_minigender_2
  • 来自: 北京
最近访客 更多访客>>
sxu
文章分类
社区版块
存档分类
最新评论

sqlserver 日期函数

阅读更多
一直都在用oracle,对sqlserver中的一些函数很不熟悉,在工作用偶尔会用到,贴在这里,便于以后查询


取出数据库字段中DateTime列的日期部分:
(1)select Datename(year,GetDate())+'-'+Datename(month,GetDate())+'-'+Datename(day,GetDate())
(2)select convert(varchar(10),getdate(),120)

(3)select * from MyDsk_提醒 where year(预约时间) = '2008' and month(预约时间)='8' and Day(预约时间)='29' and 提醒人ID ='50271'
(4)select * from MyDsk_提醒 where convert(varchar(10),预约时间,120)='2008-08-29' and 提醒人ID ='50271'
取出数据库字段中DateTime列的时间部分:
cast(datepart(hh,预约时间)as varchar) --小时
cast(datepart(mi,预约时间)as varchar)--分钟
cast(datepart(ss,预约时间)as varchar)--秒

[转]SQL Server 日期和时间函数
1、常用日期方法(下面的GetDate() = '2006-11-08 13:37:56.233')

(1)DATENAME ( datepart ,date )

  返回表示指定日期的指定日期部分的字符串。Datepart详见下面的列表.

SELECT DateName(day,Getdate()) –返回8

(2)DATEPART ( datepart , date )

  返回表示指定日期的指定日期部分的整数。

SELECT DATEPART(year,Getdate()) –返回2006

(3)DATEADD (datepart , number, date )

  返回给指定日期加上一个时间间隔后的新datetime 值。

SELECT DATEADD(week,1,GetDate()) --当前日期加一周后的日期

(4)DATEDIFF ( datepart , startdate , enddate )

返回跨两个指定日期的日期边界数和时间边界数。

SELECT DATEDIFF(month,'2006-10-11','2006-11-01') --返回1

(5)DAY ( date )

返回一个整数,表示指定日期的天datepart 部分。

SELECT day(GetDate()) –返回8

(6)GETDATE()

以datetime 值的SQL Server 2005 标准内部格式返回当前系统日期和时间。

SELECT GetDate() --返回2006-11-08 13:37:56.233

(7)MONTH ( date )

返回表示指定日期的“月”部分的整数。

SELECT MONTH(GETDATE()) --返回11

(8)YEAR ( date )

返回表示指定日期的“年”部分的整数。

SELECT YEAR(GETDATE()) --返回2006


2、取特定日期

(1)获得当前日期是星期几

SELECT DateName(weekday,Getdate()) --Wednesday

(2)计算哪一天是本周的星期一

SELECT DATEADD(week, DATEDIFF(week,'1900-01-01',getdate()), '1900-01-01') --返回2006-11-06 00:00:00.000

SELECT DATEADD(week, DATEDIFF(week,0,getdate()),0) 

(3)当前季度的第一天

SELECT DATEADD(quarter, DATEDIFF(quarter,0,getdate()), 0)—返回2006-10-01 00:00:00.000

(4)如何取得某个月的天数

SELECT Day(dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,'2006-02-03')+1,0))) —返回28

(5)一个季度多少天

declare @m tinyint,@time smalldatetime

select @m=month(getdate())
select @m=case when @m between 1 and 3 then 1
  when @m between 4 and 6 then 4
  when @m between 7 and 9 then 7
  else 10 end

select @time=datename(year,getdate())+'-'+convert(varchar(10),@m)+'-01'
select datediff(day,@time,dateadd(mm,3,@time)) —返回92


(6)获得年月日(yyyy-MM-dd)

SELECT CONVERT(VARCHAR(10),GETDATE(),120) –返回2006-11-08

3、其它
(1)--下面的示例将日期指定为数字。
数据库引擎将0 解释为1900 年1 月1 日。
SELECT MONTH(0), DAY(0), YEAR(0) –返回1 1 1900

--下面两句是等效的
SELECT DATENAME(WEEKDAY,0)
SELECT DATENAME(WEEKDAY,'1900-01-01')


(2)SET DATEFIRST { number | @number_var }

将一周的第一天设置为从1 到7 的一个数字。

SET DATEFIRST 1 --表示一周的第一天是“星期一"
SELECT DATENAME(WEEKDAY,GETDATE()) --Wednesday
SELECT DATEPART(weekday,GETDATE()) --返回3
--查看当前设置情况
select @@DATEFIRST


(3)SET DATEFORMAT { format | @format_var }

设置用于输入datetime 或smalldatetime 数据的日期部分(月/日/年)的顺序。
...有效参数包括mdy、dmy、ymd、ydm、myd 和dym。
...该设置仅用在将字符串转换为日期值时的解释中。它不影响日期值的显示。
...SET DATEFORMAT 的设置是在执行或运行时设置,而不是在分析时设置。
...SET DATEFORMAT 将覆盖SET LANGUAGE 的隐式日期格式设置。
下面是例子:
-- Set date format to year, day, month.
SET DATEFORMAT ydm;
GO
DECLARE @datevar DATETIME;
SET @datevar = '1998/31/12';
SELECT @datevar AS DateVar;
GO
-- Set date format to year, month, day.
SET DATEFORMAT ymd;
GO
DECLARE @datevar DATETIME;
SET @datevar = '1998/12/31';
SELECT @datevar AS DateVar;
GO
(4)日期部分的列表
日期部分  
缩写
year
yy, yyyy
quarter
qq, q
month
mm, m
dayofyear
dy, y
day
dd, d
week
wk, ww
weekday
dw
hour
hh
minute
mi, n
second
ss, s
millisecond
ms
数据类型  
范围
datetime
1753 年 1 月 1 日到 9999 年 12 月 31 日
smalldatetime
1900 年 1 月 1 日到 2079 年 6 月 6 日

分享到:
评论

相关推荐

    SQL Server 日期函数的使用

    在sql server中日期的处理对于大多数人来说是一个很头疼的问题,现在这篇文档中包含了所有的日期函数以及日期显示语句,希望对你有所帮助。

    SQLServer日期函数集合.

    SQL Server 日期函数集合 SQL Server 提供了多种日期函数,可以帮助用户方便地对日期进行操作和计算。下面将对这些日期函数进行详细的介绍。 获取系统日期和时间值函数 SQL Server 提供了两个函数来获取系统当前...

    SqlServer日期函数学习笔记.rar

    这份"Sql Server日期函数学习笔记"涵盖了数据库管理员和开发人员在处理日期和时间数据时所需的关键知识。以下是对这些函数的详细解释: 1. **GETDATE()** 函数: 这是最基础的日期函数,用于获取当前系统日期和...

    SQL SERVER 关于日期函数(字符转日期,日期转字符串)

    SQL Server 日期函数详解 SQL Server 中的日期函数是数据库管理系统中非常重要的一部分,它提供了多种方式来处理日期和时间数据。在本文中,我们将详细介绍 SQL Server 中的日期函数,包括字符转日期、日期转字符串...

    SQL_SERVER日期函数详细用法

    SQL Server 日期函数详细用法 SQL Server 提供了多种日期函数,用于处理日期和时间数据。下面将详细介绍这些函数的用法。 1. GETDATE() 函数 GETDATE() 函数用于获取当前日期和时间。该函数返回当前服务器的日期...

    oracle与sqlserver日期函数对比.pdf

    Oracle 和 Microsoft SQL Server 都是...总之,Oracle 和 SQL Server 在日期函数上有许多相似的概念,但具体的语法和实现方式有所不同。开发者在进行跨数据库平台开发时需要对这些差异有所了解,以确保代码的可移植性。

    oracle与sqlserver日期函数对比.docx

    Oracle 和 SQL Server 都是广泛使用的数据库管理系统...总的来说,Oracle 和 SQL Server 的日期函数虽然有相似之处,但在具体用法和功能上有所不同,开发人员需要根据所使用的数据库系统来选择合适的函数进行日期处理。

    sqlserver日期函数.pdf

    根据提供的文件内容,以下是对SQL Server中日期函数的知识点总结: 1. GETDATE()函数 这是SQL Server中最常用的一个日期函数,用于获取当前系统的日期和时间。函数不带任何参数,返回的是一个datetime类型的数据。...

    SqlServer日期处理函数

    ### SqlServer 日期处理函数详解 #### 概述 SqlServer 提供了一系列强大的日期处理函数,这些函数可以帮助开发者和数据库管理员高效地操作日期和时间数据。本文档将详细介绍几个常用的日期处理函数及其应用场景,并...

    sqlserver日期函数[总结].pdf

    在SQL Server中,日期函数是处理日期和时间数据的关键工具,尤其在数据分析和报表生成时。以下是对SQL Server中常用日期函数的详细说明: 1. DATENAME(datepart, date):此函数返回一个字符串,表示指定日期的指定...

    sqlserver日期函数[参照].pdf

    SQL Server中的日期函数是数据库操作中非常常用的功能,它们用于处理和操纵日期和时间数据。在SQL Server中,有多种日期函数可以帮助我们提取、转换和计算日期和时间。以下是基于提供的内容对这些函数的详细解释: ...

    Sqlserver 自定义函数 Function使用介绍

    SQL Server中的自定义函数是数据库开发中非常重要的组成部分,它们允许开发者创建自定义的逻辑,以便在查询中重用和简化复杂操作。本篇主要关注SQL Server 2008中的三种自定义函数:标量函数、内联表值函数和多语句...

    sqlserver自定义函数

    以上这些自定义函数和操作展示了SQL Server中函数的强大功能,它们可以方便地进行日期处理、字符串操作、数据统计等任务,提高数据库查询和管理的效率。在实际工作中,开发人员可以根据需求创建类似的函数,以满足...

    SQLSERVER时间函数汇总

    通过阅读“SQLSERVER时间函数汇总”这篇博客,你将更深入地了解如何利用这些函数来处理日期和时间数据,从而提升你的SQL编程技能。博客中可能还会涵盖一些实际示例和最佳实践,帮助你更好地理解和应用这些函数。

    SQLSERVER时间日期函数详解

    SQLSERVER 时间日期函数详解 SQL Server 提供了多种时间日期函数,帮助开发者快速处理日期和时间相关的操作。下面将对这些函数进行详解,并提供示例。 1. GetDate() 函数 GetDate() 函数用于返回当前系统的日期和...

    SQLServer时间日期函数详解.doc

    以下是SQL Server中一些主要的时间日期函数的详细解释: 1. **GETDATE()**: 这个函数返回系统当前的日期和时间,格式为datetime类型。例如: ```sql SELECT GETDATE(); ``` 结果将显示当前日期和时间。 2. *...

    SQL server 和C#中的DateTime使用小结

    SQL Server 中的日期函数是数据库管理系统中非常重要的一部分,它提供了多种日期函数来操作日期类型的数据。同时,在 C# 中也提供了多种方法来处理日期类型的数据。本文将主要介绍 SQL Server 日期函数的使用以及 C#...

    sql server 自定义函数

    SQL Server中的自定义函数是数据库开发中的重要工具,允许用户根据特定需求创建自己的函数,以扩展标准SQL的功能。本文将深入探讨SQL Server自定义函数的种类、用途、创建方法以及实际应用示例。 一、自定义函数的...

    SQLServer系统函数总结

    整理SQL Server系统函数,包含聚合函数、配置函数、日期时间函数、数学函数、字符串等等。简单介绍各函数的使用方法(例子)及函数功能

Global site tag (gtag.js) - Google Analytics