如何从日期Sql查询中获取日期和月份?
日期格式:2014年6月20日 需要查询返回日期:6月20日 当前日期:2015年6月20日 所以,它应该与当前日期进行比较,并返回上述情况如何从日期Sql查询中获取日期和月份?,sql,sql-server,Sql,Sql Server,日期格式:2014年6月20日 需要查询返回日期:6月20日 当前日期:2015年6月20日 所以,它应该与当前日期进行比较,并返回上述情况 总年数:1年您可以使用DATEPART剪切日期的各个部分 见: 这样,您应该能够比较日期,例如在where-子句中 由于提问者需要的日期不是整数,他可以使用DATENAME函数: SELECT DATEPART(day,currentDate), DATENAME(month, currentDate) SELECT DATEDIFF(year, '20
总年数:1年您可以使用
DATEPART
剪切日期的各个部分
见:
这样,您应该能够比较日期,例如在where
-子句中
由于提问者需要的日期不是整数,他可以使用DATENAME
函数:
SELECT DATEPART(day,currentDate), DATENAME(month, currentDate)
SELECT DATEDIFF(year, '2014-06-20', GETDATE()) AS YearDiff
由于DATENAME
不支持MMM格式,因此也可以使用CASE
结构
SELECT DATEPART(day,currentDate) as day,
CASE DATEPART(month, currentDate)
WHEN 1 THEN N'JAN'
WHEN 2 THEN N'FEB'
WHEN 3 THEN N'MAR'
WHEN 4 THEN N'APR'
WHEN 5 THEN N'MAI'
WHEN 6 THEN N'JUN'
WHEN 7 THEN N'JUL'
WHEN 8 THEN N'AUG'
WHEN 9 THEN N'SEP'
WHEN 10 THEN N'OCT'
WHEN 11 THEN N'NOV'
WHEN 12 THEN N'DEC'
END as month
若要获得所需的结果,请使用或函数。也可以看看优秀的文章: 注意:格式功能在MS SQL Server 2012及更高版本中可用 要返回时差,请使用函数:
SELECT DATEPART(day,currentDate), DATENAME(month, currentDate)
SELECT DATEDIFF(year, '2014-06-20', GETDATE()) AS YearDiff
问题不够清楚!!!!如何仅从日期(2014年6月20日)开始获取日期和月份。下一部分:它应该与当前日期进行比较,比如今天是2015年6月20日,它应该返回按照今天日期完成的1年。它以整数(1,2,3)格式返回月份。。我需要MMM格式的月份(JUN),您可以使用
DATENAME
(请参阅:)但它不支持MMM格式。嗯。我增加了两种获取月份名称的方法。谢谢,让我试试@Ionic@ManishGoswami如果对您有效,您可以将该问题标记为您的答案。:-)