簡體   English   中英

mysql搜索多個關鍵詞

[英]mysql search with multiple keywords touching

$sql ="
        SELECT * FROM table

        WHERE $email_filter lower(table.synopsis) like '% $search_word_fix %'
        OR lower(table.sp_name) like '% $search_word_fix %'    
        GROUP by table.sp_name  
        ORDER BY table.grade DESC
        ";
    $re=mysql_query($sql);

因此,我有一個簡單的sql查詢,例如,如果我搜索2個單詞:Hello World,則返回兩個單詞的結果:hello。 這個單詞的結果:world我試圖讓它返回“ hello word”:where table.field ='$ keyword'我得到:沒有結果。 我打開了phpmyadmin,並且我知道有結果。 任何幫助表示贊賞。謝謝

更改=的LIKE,=強制單詞絕對

嘗試:

$sql ="
    SELECT * FROM table

    WHERE $email_filter lower(table.synopsis) REGEXP '[[:<:]]$search_word_fix[[:>:]]' = 1

    OR lower(table.sp_name) REGEXP '[[:<:]]$search_word_fix[[:>:]]' = 1
    GROUP by table.sp_name  
    ORDER BY table.grade DESC
    ";

希望能幫助到你

嘗試刪除該%符號。 所以like查詢看起來像

like '$search_word_fix'
WHERE table.field LIKE '%Hello world%'

要么

WHERE table.field LIKE '%Hello%world%'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM