2015-11-03 176 views

回答

1

根據@Aishvarya和@Arvo的建議,代碼如下所示。很簡單。

declare @input varchar(100) = 'ABCDEFGHIJKLMNOPQR' 
declare @output varchar(100) = '' 

declare @index int = 1 
declare @max_index int = (select len(@input)) 

while @index <= @max_index 
begin 
    if @index % 2 = 0 
     set @output = @output + substring(@input, @index, 1) 

    set @index = @index + 1 
end 

print @output -- BDFHJLNPR 
+0

請注意,在第1次迭代('@ index' = 1)結束後,通過將@ @ index增加2 *,可以使循環迭代次數更少。 – niksofteng

+0

非常感謝這個工作 –

1

指數從1開始在SQL所以用Substring

SELECT SUBSTRING('ABCDEFGHIJKLMNOPQR', 1, 1) //returns the character at 2nd position 
SELECT SUBSTRING('ABCDEFGHIJKLMNOPQR', 3, 1) //returns the character at 4th position 

等。

+0

對不起Aishvarya你沒有得到我的問題。我希望所有的字符都返回到位於偶數位置的查詢中。 –

+0

你想要偶像中的角色不是嗎? – MusicLovingIndianGirl

+0

@KunalChoudhary - 解釋得更好,Aishvarya的答案對我來說也是正確的。 – Arvo

相關問題