sql-server - 如何从日期中选择MM
问题描述
我有一个日期20190412
,我想选择月份和年份。
下面是我用来获取年份和月份的代码
Select CAST(YEAR(@datecolumn) as varchar(10))+CAST(month(@datecolumn) as varchar(10)) as d
在上面的代码中,我能够得到 2019 年,但我想要 04 但上面的代码只给了我 4。
谁能告诉我如何在 sql server 2008 中获得 04。
我已经更新了我正在使用的代码,现在日期来自一个变量。
解决方案
您需要将值转换为 a varchar
,在其前面加上 a '0'
,并取最右边的 2 个字符。
SELECT RIGHT('0' + CONVERT(varchar(2),MONTH(datecolumn)),2);
或者,您可以将值转换为varchar
带有样式的 a,然后使用SUBSTRING
:
SELECT SUBSTRING(CONVERT(varchar(8),datecolumn,112),5,2);
在这种情况下,样式代码 112 等同于样式yyyyMMdd
;我们可以从中获取位置 5(MM
部分)的 2 个字符。
推荐阅读
- java - 如何启用android系统的夜灯?
- python - 矩阵列表:将矩阵的每个元素绘制为索引的函数
- ios - 将泛型委托添加到 Swift 中的基类
- content-management-system - 什么无头 CMS 处理分层数据?
- hasura - 使用 graphql Playground 连接到 hasura 控制台
- powershell - Powershell - 禁用彩色命令输出
- keycloak - 尝试使用 REST api 在 keycloak 中授权用户时出现 CORS 策略错误
- mysql - MySQL SQL> 错误:未连接。创建 MySQL 用户的问题
- python - 熊猫检测python中熊猫系列中日期值的变化
- javascript - 单击按钮后如何清除输入值?