2011-08-17 71 views
0

如果在數據庫中的單詞nice car, nice, nice, nice car和我們搜索詞nice:如何ORDER BY(上市)的,如:nice, nice, nice car, nice car,或者搜索詞nice carORDER BY(上市),如:nice car, nice car, nice, nice通過結果搜索命令?

  • 詞語的數據庫:nice carnicenicenice car
  • 好的=>nicenicenice carnice car
  • 好車=>nice carnice 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:[email protected]+1 rownum, t.* 
     FROM (
     SELECT * 
     FROM my_table 
     WHERE 
      $where 
     ORDER BY id desc 
     LIMIT $offset, $coun_page  
     ) t, 
     (SELECT @rownum:=0) r"); 
+0

如果你搜索單詞'nice car',select語句將不會返回任何'很好'的記錄 – Andrey

回答

5

MySQL不是一個搜索引擎。我強烈推薦使用實際用於此任務的東西(例如Sphinx,Solr或Lucene)。

+0

'Sphinx,Solr或Lucene' - >這是什麼?請給我進一步解釋,並舉例 –

+2

轉到瀏覽器的地址欄並輸入「www.google.com」,然後在屏幕中間出現一個魔術盒。在那裏輸入'Solr'並點擊搜索。技術今天能做什麼是令人驚訝的。 – MatBailie

+0

有沒有其他辦法? –