sql - SQL:如何基于 GETDATE() 函数以 YYYYMM 格式获取上个月的整数值
问题描述
例如,如果今天的日期是 2019 年 1 月 30 日,我想使用 GETDATE() 函数返回该日期并将其设置为等于 [Current_Date]。然后,我想使用当前日期将 201912 的值分配给我已声明为整数的变量 @SETMONTH。任何能够做到这一点的代码帮助将不胜感激。
@SETMONTH INT
--To assign a value to [Current_Date]
SELECT
CONVERT(DATE, GETDATE()) [Current_Date]
UPDATE Table1
SET
Model_Month = --This is where I need a formula that can convert the date of 1/30/2020 to 201912
解决方案
您可以使用EOMONTH():
SELECT CONVERT(VARCHAR(6), EOMONTH(GETDATE(), -1), 112);
因此,更新语句如下所示:
DECLARE @SETMONTH INT
SELECT @SETMONTH = CONVERT(VARCHAR(6), EOMONTH(GETDATE(), -1), 112)
UPDATE table1
SET Model_Month = @SETMONTH
推荐阅读
- android - 安卓 SQLITE FTS 版本
- ios - iOS 中的 Facebook 身份验证
- facebook-messenger - 聊天机器人在 Messenger *Group* 中发起聊天
- webpack - 多 ./src/app.js dist/app.bundle.js 中的错误
- sorting - GlazedList 基于表的comparatorProperty 排序的列表排序顺序
- c - 速记 c if else 语句和循环中断的组合使用导致错误
- angular - 将一个变量传递给另一个变量
- hyperledger-fabric - HYperledger composer v0.19.2 网络启动失败并出现错误 [lscc] executeDeployOrUpgrade -> ERRO 46e 无法获取链码的包?
- c++ - 替代运算符 - 导致内联汇编错误
- c - 处理两个线程,一个在休眠,一个在等待输入