編輯:強制使用 2008 R2
我需要將兩位數的年份附加到發票號(為簡單起見,我使用的是測驗變數)。以前我只需要附加月份和日期,但客戶現在要求輸入兩位數的年份。
我的方法: REPLACE SUBSTRING STR YEAR(可變日期時間)
REPLACE((SUBSTRING(STR (Year(@Date),4),3,2)), ' ', '0')**
我的代碼:
DECLARE @TestVariable AS VARCHAR(100),
@Date as datetime = GetDate()
SET @TestVariable = '1234'
REPLACE(STR(MONTH(@Date), 2), ' ', '0')
REPLACE(STR(DAY(@Date), 2), ' ', '0')
REPLACE((SUBSTRING(STR (Year(@Date),4),3,2)), ' ', '0')
PRINT @TestVariable
uj5u.com熱心網友回復:
老實說,不要再使用 2 位數的年份了;吸取上世紀錯誤的教訓,使用4位數。
如果您“必須”,那么您可以使用CONVERT樣式代碼,然后將字符替換為空字串:
DECLARE @TestVariable varchar(100) = '1234',
@Date datetime = GETDATE();
SELECT @TestVariable REPLACE(CONVERT(varchar(8),@Date, 1),'/','');
uj5u.com熱心網友回復:
您可以簡化整個程序,而不僅僅是年份部分。使用 FORMAT,您可以輕松完成此操作。
DECLARE @TestVariable AS VARCHAR(100) = '1234'
, @Date as datetime = GetDate()
Select @TestVariable FORMAT(@Date, 'MMddyy')
uj5u.com熱心網友回復:
select replace(convert(varchar(20),@date,1)'/','') --or any other you need
查看檔案
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/495803.html
上一篇:在sqlserver中過濾一列恰好一個單詞和三個單詞
下一篇:過濾一列是json的SQL查詢
