相关疑难解决方法(0)

搜索查询,“排序依据”优先级

我需要在小的内容表中实现简单的搜索:ID,名称,描述,内容。结果必须按优先级排序

  1. 名称
  2. 描述
  3. 内容

这意味着,如果在说明字段中找到了搜索到的单词,则只会在名称字段中所有带狗的行之后显示

我做了什么:

我尝试创建临时表,其结构类似于我使用的表,但具有另一个字段优先级。对于每个字段,我将它们用于搜索,请在临时表中插入选择

例:

  DECLARE @query NVARCHAR(255)


  CREATE TABLE #tbl_search
    (
      [id] INT NOT NULL ,
      [name] NVARCHAR(255) ,
      [description] NVARCHAR(MAX) ,
      [content] NVARCHAR(MAX) ,
      [priority] INT
    )    


    --searching in name field
  INSERT    INTO #tbl_search
            ( [ID] ,
              [name] ,
              [description] ,
              [content] ,
              [priority]

            )
            SELECT  [ID] ,
                    [name] ,
                    [description] ,
                    [content] ,
                    1
            FROM    [tbl_content]
            WHERE   name LIKE '%' + @query + '%'

    --searching in description field            
  INSERT    INTO #tbl_search
            ( [ID] …
Run Code Online (Sandbox Code Playgroud)

sql-server search-engine

4
推荐指数
1
解决办法
4562
查看次数

标签 统计

search-engine ×1

sql-server ×1