与日期分开检索日,月和年

时间:2012-05-01 20:03:53

标签: sql sql-server-2008 tsql date

是否有一种实现方法可以从T-SQL中的Date字段中单独检索日,月和年?我发现的一切都是以相反的方式使这个过程,在我的情况下,我的意思是,如果我有2012-05-22我希望有3种不同的方法分别得到2012年,05年和22年。

提前致谢。

3 个答案:

答案 0 :(得分:4)

如果是SQL Server,您可以使用DATEPART(MSDN:http://msdn.microsoft.com/en-us/library/ms174420.aspx

示例:

DECLARE @yourDate DATETIME
SET @yourDate = '2012-05-22'

SELECT DATEPART(DAY, @yourDate), 
       DATEPART(MONTH, @yourDate),
       DATEPART(YEAR, @yourDate)

答案 1 :(得分:1)

如果您使用的是mssql。你可以这样做:

DECLARE @date DATETIME
SET @date=GETDATE()
SELECT
    YEAR(@date) AS Years,
    MONTH(@date) AS MONTHs,
    DAY(@date) AS Days

或者您可以使用datepart。像这样:

DECLARE @date DATETIME
SET @date=GETDATE()
SELECT
    DATEPART(YEAR,@date) AS Years,
    DATEPART(MONTH,@date) AS MONTHs,
    DATEPART(DAY,@date) AS Days

答案 2 :(得分:0)

我相信你可以将date_format(DATEFIELD%M)作为月份,date_format(DATEFIELD%b)作为日期。

我在Rails应用程序中使用了类似的东西。

http://www.w3schools.com/sql/func_date_format.asp