我有以下查询。
我只能有 7 个字符(- 和 AZ 组合)
前 5 个字符只能有一个“-”(周一到周五) 对于周六和周日,我们只能有一个字符或破折号 我将 Sa 和 Su 替换为 S
但是,每当他们在周六和/或周日传递两个破折号时,我需要用每个破折号替换它们
所以在所有操作之后长度只能是 7。
我已经尝试过,但在周六/周日的位置上陷入了二对一的短跑场景。
请帮忙!当我发现更多时,我会保持更新。
THX 在 ADV
代码:
CREATE Table TempTable (string varchar(50))
INSERT INTO TempTable (string)
VALUES ('MTWRFSS')
,('MTWRFSaS')
,('MTWRFSaSu')
,('----F--')
,('----F----')
,('MT------')
,('MT------')
,('----FSa--')
,('----FSa-')
,('----FS--')
,('----FS-')
,('----F-Su')
,('----F--Su')
,('----F-S')
,('----F--S')
UPDATE TempTable
SET string = REPLACE(REPLACE(RTRIM(LTRIM(string)),'SA','S'),'SU','S')
SELECT string
,LEN(String) AS stringLengh FROM TempTable
--DROP TABLE TempTable