SQL查询将整数转换为日期并查找月数的差异



我有两个数字(整数)- 20210501 &20210101,前4位为年,后2位为月,后2位为日。我想编写一个SQL查询,将这些整数转换为日期,然后找出两个日期之间的月差

这两个整数的日期格式很方便。因此,您可以将其转换为字符串,然后转换为日期并使用datediff():

select datediff(month,
convert(date, convert(varchar(255), @val1)),
convert(date, convert(varchar(255), @val2))
)

首先将varchar格式转换为日期格式并获得月差

——SQL SERVER

SELECT DATEDIFF(MONTH, CONVERT(varchar, CAST('20210101' AS DATE), 23), CONVERT(varchar, CAST('20210501' AS DATE), 23)) month_diff

交替的方式

——SQL SERVER

SELECT DATEDIFF(MONTH, CAST(CONVERT(varchar, CAST('20210101' AS DATE), 23) AS date), CAST(CONVERT(varchar, CAST('20210501' AS DATE), 23) AS date)) month_diff

相关内容

  • 没有找到相关文章

最新更新