0

是否有一种实现的方法可以从 T-SQL 中的日期字段中分别检索日、月和年?我发现的一切都是为了让这个过程反过来,就我而言,我的意思是如果我有 2012-05-22,我希望有 3 种不同的方法来分别获得 2012、05 和 22 的结果。

提前致谢。

4

3 回答 3

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)
于 2012-05-01T20:10:22.840 回答
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
于 2012-05-01T20:12:11.077 回答
0

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

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

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

于 2012-05-01T20:07:29.313 回答