根据搜索结果对SQL查询进行排序



我有一个包含列FULL_NAME的表,我正在进行搜索并获取结果。我需要按搜索位置(搜索词(对这些列进行排序。

Example Of data
Column (FULL_NAME) 
IDFULL_NAME
1zaid said Alabri
2说sleem salim AlAhmedi
3salim zaid Ahmed AlZaid
4Ahmed said zaid AlSalimi

由于您已将SQL Server标记为数据库,请尝试以下操作:

select *
from table
where full_name like N'%Ahmed%'
order by charindex('Ahmed',full_name,1)

这样的东西可能对你有用:

select *
from table
where full_name like N'%Ahmed%'
order by charindex(N'Ahmed', full_name)

charindex函数返回搜索与字符串匹配的字符编号。

我认为如果您使用的是SQL server,那么您可以通过并使用CHARIdex使用条件顺序如下

SELECT    EnglishName   
FROM            Employees
where EnglishName like N'%Ahmed%' 
order by charindex(N'Ahmed',EnglishName,1)

最新更新