2014-07-16 2 views
0

테이블의 특정 열에 단어의 문자 위치를 바꾸기위한 쿼리를 작성하려면 어떻게해야합니까?단어의 문자 위치를 교환하는 쿼리

예 :

HAPPY -> PHAPY 
TIRED -> RTIED 

내가 어떻게 할 수 있습니까?

+1

당신은 무엇을 묻고 있습니까? –

+0

세 번째 문자를 처음부터 다시 위치 시키길 원합니까? – Alireza

+1

이것은 SQL로 구현할 수 있지만, SQL이이를 수행하는 데 적합한 기술이라고 생각하지 않습니다. 프론트 엔드 기술에는 어레이 (Array) 등이 있으므로 프론트 엔드 기술에서이를 수행 할 수 있습니다. –

답변

1

이 시도 :

당신이 단어에서 셔플 문자를 원하는 경우
Declare @YourText NVARCHAR(100) = 'HAPPY' 

Select Substring(@yourText,3,1)+STUFF(@YourText,3,1,'') 
0

, 당신은 쿼리 아래에 시도 할 수 있습니다. 이것을 UDF로 만들 수 있습니다.

DECLARE @Word VARCHAR(20) = 'HAPPY' 
DECLARE @NewWord VARCHAR(20) = '' 
DECLARE @Count INT = 1 
DECLARE @Pos INT 

WHILE LEN(@Word) > 0 
BEGIN 
    SET @Pos = CAST(RAND()*10 AS INT) % LEN(@Word) + 1 
    SET @NewWord = @NewWord + ISNULL(SUBSTRING(@Word, @Pos, 1),'') 
    SET @Word = STUFF(@Word, @Pos, 1, '') 
    SET @Count = @Count + 1 
END 

SELECT @NewWord AS NewWord 
관련 문제