如何在sql中更改字母5和6的位置。例如:
word:weather new word:weatehr
答案 0 :(得分:1)
您可以尝试将SUBSTRING
与LEN
函数配合使用。
CREATE TABLE T(
col varchar(40)
);
INSERT INTO T VALUES ('weather')
查询1 :
SELECT
col 'word' ,CONCAT(SUBSTRING(col,1,4),SUBSTRING(col,6,1),SUBSTRING(col,5,1),SUBSTRING(col,7,LEN(col) - 5)) 'new word'
FROM T
Results :
| word | new word |
|---------|----------|
| weather | weatehr |
答案 1 :(得分:0)
declare @s varchar(32) = 'weather';
set @s = stuff(@s, 5, 2, reverse(substring(@s, 5, 2)));
由于您只是反转相邻字符,因此比交换任意字符要容易一些。