首页 > 解决方案 > 阿拉伯名称查询返回多个结果

问题描述

我在使用特定阿拉伯名称(如以下“رفعة”)进行简单选择查询时遇到一种情况,该查询返回多个结果。它正确地返回“رفعة”,但它也返回“رفعت”。

SELECT * FROM Table where ArabicName = N'رفعة'

我也遇到过另外两种情况。当使用“حياة”查询时,它返回“حياة”和“حيات”。当使用“نعمة”查询时,它返回“نعمة”和“نعمت”。

我在网上搜索了答案,但没有运气。

有没有人遇到过这种情况?

标签: sql-servertsqlarabic

解决方案


我能够通过在查询中添加以下内容来解决此问题:COLLATE Arabic_100_CI_AS

SELECT * FROM Table where ArabicName COLLATE Arabic_100_CI_AS = N'رفعة'

注意!如果没有_100_在排序规则规范中指定,它就无法工作。


推荐阅读