在搜索结果后排序 SQL 个查询
Sorting SQL query after search result
我有 table 包含列 FULL_NAME,我正在搜索并获得结果。我需要按搜索位置(搜索词)对这些列进行排序。
Example Of data
Column (FULL_NAME)
ID
FULL_NAME
1
扎伊德说阿拉布里
2
说 sleem salim AlAhmedi
3
萨利姆·扎伊德·艾哈迈德·阿尔扎伊德
4
Ahmed said zaid AlSalimi
搜索示例:
SELECT FULL_NAME
FROM Table
WHERE(FULL_NAME LIKE N'%ِAhmed%')
我需要这样的结果
ID
FULL_NAME
1
艾哈迈德 赛义德·阿尔萨利米
2
说 Ahmed salim AlAhmedi
3
salim zaid Ahmed AlZaid
4
said sleem salim AlAhmedi
这是我要查询结果后按位置排序的结果。
类似这样的东西可能对你有用:
select *
from table
where full_name like N'%Ahmed%'
order by charindex(N'Ahmed', full_name)
charindex
函数returns搜索匹配字符串的字符数。
既然您已将 SQL 服务器标记为您的数据库,请试试这个:
select *
from table
where full_name like N'%Ahmed%'
order by charindex('Ahmed',full_name,1)
我认为如果您使用的是 SQL 服务器,您可以使用 CHARIndex 来使用条件订单
如下
SELECT EnglishName
FROM Employees
where EnglishName like N'%Ahmed%'
order by charindex(N'Ahmed',EnglishName,1)
我有 table 包含列 FULL_NAME,我正在搜索并获得结果。我需要按搜索位置(搜索词)对这些列进行排序。
Example Of data
Column (FULL_NAME)
ID | FULL_NAME |
---|---|
1 | 扎伊德说阿拉布里 |
2 | 说 sleem salim AlAhmedi |
3 | 萨利姆·扎伊德·艾哈迈德·阿尔扎伊德 |
4 | Ahmed said zaid AlSalimi |
搜索示例:
SELECT FULL_NAME
FROM Table
WHERE(FULL_NAME LIKE N'%ِAhmed%')
我需要这样的结果
ID | FULL_NAME |
---|---|
1 | 艾哈迈德 赛义德·阿尔萨利米 |
2 | 说 Ahmed salim AlAhmedi |
3 | salim zaid Ahmed AlZaid |
4 | said sleem salim AlAhmedi |
这是我要查询结果后按位置排序的结果。
类似这样的东西可能对你有用:
select *
from table
where full_name like N'%Ahmed%'
order by charindex(N'Ahmed', full_name)
charindex
函数returns搜索匹配字符串的字符数。
既然您已将 SQL 服务器标记为您的数据库,请试试这个:
select *
from table
where full_name like N'%Ahmed%'
order by charindex('Ahmed',full_name,1)
我认为如果您使用的是 SQL 服务器,您可以使用 CHARIndex 来使用条件订单 如下
SELECT EnglishName
FROM Employees
where EnglishName like N'%Ahmed%'
order by charindex(N'Ahmed',EnglishName,1)