2014-07-16 53 views
0

如何編寫查詢以交換表格的特定列中單詞的字母位置?在單詞中交換字母位置的查詢

例子:

HAPPY -> PHAPY 
TIRED -> RTIED 

我怎樣才能做到這一點?

+1

其不清楚你在問什麼? –

+0

你想讓第三個字母重新定位到開頭嗎? – Alireza

+1

這可以在SQL中實現,但我不認爲SQL是正確的技術。你可以在你的前端技術中使用它,因爲前端技術具有數組等。 –

回答

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 
相關問題