【发布时间】:2013-06-03 05:04:35
【问题描述】:
我正在使用如下的 sql 查询
string strPosition = "Blithe Spirit";
string[] ArrPosition=new string[5];
string strPositionList = "";
if (!strPosition.Equals(""))
{
ArrPosition = strPosition.Split(' ');
}
foreach (string word in ArrPosition)
{
strPositionList += "CurrPosi like '%" + word + "%' or ";
}
string str="select * from Tbl_Book where Book_Name like %"+strPosition+"% or ("+strPositionList +")";
在上面的查询中。我得到的结果是像 Blithe Spirit,Blithe,Spirit 这样的书名。这是我需要的输出,但是获取输出顺序为数据库行顺序。我需要最大匹配,即完全匹配 ' Blithe Spirit' 作为第一个,'Blithe' 和 'Spirit' 的剩余匹配作为下一个
【问题讨论】:
-
我需要both.output作为第一个全文搜索和分割文本搜索作为下一个
-
使用 Oracle 文本 docs.oracle.com/cd/B19306_01/server.102/b14220/…