按结果搜索排序?

Nay*_*ila 0 php mysql sql codeigniter

如果在数据库中有单词nice car, nice, nice, nice car并且我们搜索了单词nice:ORDER BY(列出)那些如何:nice, nice, nice car, nice car或者如果搜索单词nice car ORDER BY(列出)如:nice car, nice car, nice, nice

  • 在数据库中的单词:nice car,nice,nice,nice car
  • 好的=> ,nice,,nicenice carnice car
  • 好车=> ,nice car,,nice carnicenice

我的查询:

$find = $this->input->post('find');
    $where  =   "name LIKE '%$find%' OR 
            star LIKE '%$find%' OR
            address LIKE '%$find%'";
$query = $data['results'] = $this->db->query("SELECT @rownum:=@rownum+1 rownum, t.*
        FROM (
        SELECT *
        FROM my_table
        WHERE 
            $where
        ORDER BY id desc
        LIMIT $offset, $coun_page       
        ) t,
        (SELECT @rownum:=0) r");
Run Code Online (Sandbox Code Playgroud)

Amb*_*ber 5

MySQL不是搜索引擎.我强烈建议使用实际上用于此任务的东西(例如Sphinx,Solr或Lucene).

  • 转到浏览器的地址栏并输入"www.google.com",然后屏幕中间会出现一个魔术框.在那里键入`Solr`并单击搜索.令人惊讶的是,今天的技术可以做什么. (2认同)