2016-07-25 51 views
2

要檢查迴文,我使用SQL Server的REVERSE函數。如何檢查SQL Server中的迴文

我想檢查功能如何反向使用此示例代碼工作:

declare @string nvarchar 
set @string = 'szaaa' 
SELECT REVERSE(@string) 

但我預計「aaazs」的情況下,輸出是「S」。我應該如何獲得相反的結果?有沒有更好的方法來找到迴文?

回答

6

在SQL Server中,總是使用長度與字符類型:

declare @string nvarchar(255); 
set @string = 'szaaa'; 

SELECT REVERSE(@string); 

默認長度根據上下文變化。在這種情況下,默認長度是「1」,所以字符串變量只保存一個字符。

1

要檢查迴文,您可以使用CASE語句

DECLARE @string NVARCHAR(255); 
SET @string = 'szaaa'; 

SELECT CASE WHEN @string=REVERSE(@string)THEN 'Is palindrome' 
      ELSE 'Is not palindrome' 
      END