获取T-SQL中的2位数年份

fea*_*net 27 sql sql-server date

我需要获得当前的2位数年份并增加1.所以我正在寻找的当前数字应该是11.

可能很简单,但我是一个sql noob :)

谢谢

Jon*_*man 40

你可以做 ( YEAR( GETDATE() ) % 100 ) + 1

GETDATE&YEAR

  • 如果你想让`xx99`产生0而不是100,那么在'%100`之前执行`+ 1` (6认同)

Pra*_*ana 24

这对你有用

select Right(Year(getDate())+ 1,2)
Run Code Online (Sandbox Code Playgroud)


Jon*_*han 7

SELECT RIGHT(CONVERT(VARCHAR(8), GETDATE(), 1),2) as YEAR
Run Code Online (Sandbox Code Playgroud)


Raj*_*j K 6

你可以在sql server中尝试这个

SELECT FORMAT(GETDATE(), 'yy')
Run Code Online (Sandbox Code Playgroud)


wp7*_*8de 5

对于SQL Server 2012及更高版本,我建议使用FORMAT(@DATE, 'yy')

SELECT FORMAT(DATEADD(year, 1, GETDATE()), 'yy')
Run Code Online (Sandbox Code Playgroud)

Format提供了更清洁,更易读的解决方案。因此,更少的猜测和更好的可维护性。