SqlServer日期后两位
时间: 2023-05-24 20:07:32 浏览: 208
您要查询SQL Server日期的后两位,确定是哪个部分。如果是年份的后两位,可以使用以下方法:
1.使用SUBSTRING函数截取年份的最后两位。
例如:SELECT SUBSTRING(CONVERT(VARCHAR(10), GETDATE(), 120),3,2) AS '年份后两位'
这将返回当前日期的年份后两位。
2.使用RIGHT函数截取年份的最后两位。
例如:SELECT RIGHT(YEAR(GETDATE()), 2) AS '年份后两位'
这将返回当前日期的年份后两位。
如果您要查询月份或日期的后两位,可按照类似的方式使用SUBSTRING或RIGHT函数来截取结果。
相关问题
SqlServer里截取年月日对的后两位
可以使用SqlServer的DATEPART函数来截取年月日对应的后两位。具体操作如下:
1. 截取年份的后两位:
```sql
SELECT RIGHT(YEAR(GETDATE()), 2) AS 'Year';
```
上述代码将以当前日期为例,截取年份的后两位。RIGHT函数表示从字符串的右边开始截取,因为YEAR函数返回的是INT类型,因此需要先将其转换为字符串。运行结果为:
```
Year
------
21
```
2. 截取月份的后两位:
```sql
SELECT RIGHT('00' + CAST(MONTH(GETDATE()) AS VARCHAR(2)), 2) AS 'Month';
```
上述代码将以当前日期为例,截取月份的后两位。首先使用CAST函数将MONTH函数的返回值转换为字符串类型,然后使用'00' + 字符串的方式补充前导0,最后再从右边截取两位即可。运行结果为:
```
Month
------
03
```
3. 截取日期的后两位:
```sql
SELECT RIGHT('00' + CAST(DAY(GETDATE()) AS VARCHAR(2)), 2) AS 'Day';
```
上述代码将以当前日期为例,截取日期的后两位。与截取月份类似,也需要先将DAY函数的返回值转换为字符串类型并补充前导0,最后再从右边截取两位即可。运行结果为:
```
Day
------
24
```
综上所述,SqlServer里截取年月日对应的后两位可以使用RIGHT函数结合CAST和DATEPART函数来实现。
SqlServer截取年月日的后两位返回03而不是3
可以使用RIGHT函数将日期中的后两位提取出来,然后再使用FORMAT函数将其格式化为两位数,示例如下:
SELECT FORMAT(RIGHT('2022-03-30', 2), '00')
输出结果为:03
注意,这里的日期字符串格式必须是'yyyy-mm-dd'形式,否则需要先将其转换为该格式。