【发布时间】:2018-01-08 09:47:10
【问题描述】:
我的表中有字符串值,其中包括希伯来字符(或本例中的任何 R-T-L 语言)和英文字符(或数字)。
问题是英文字符被颠倒了,看起来像:בדיקה 123456 esrever sti fI kcehC。
数字和英文字符颠倒,希伯来文就可以了。
如何使用内置 SQL 函数来识别英文子字符串(和数字)并将其反转,同时保持其他 RTL 字符的顺序?
我在以下链接中阅读了此问题的答案: Reverse characters in string with mixed Left-to-right and Right-to-left languages using SQL?
解决办法:
DECLARE @sourceString NVARCHAR(100) = N'123456 בדיקה esrever sti fI kcehC';
DECLARE @reversedString NVARCHAR(4000) = nchar(8237) + REVERSE(@sourceString) + nchar(8236)
SELECT @reversedString;
我的问题: 当我尝试使用此选项构建查询时,它不起作用例如:
select count(*) from table where nchar(8237) + REVERSE(column) + nchar(8236) = N'Check If its reverse הקידב 654321'
我该如何解决?
【问题讨论】:
-
能否提供一些示例行和预期输出
-
SQL2?你的意思是你想要一个符合 ANSI SQL-92 的查询吗?
标签: sql sql-server