亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

thinkphp3.2根據多個關鍵詞搜索一個表中的多個字段

thinkphp3.2根據多個關鍵詞搜索一個表中的多個字段

PHP
哆啦的時光機 2019-01-05 17:59:40
描述問題一個產品列表,需要根據不同的關鍵字來顯示結果。關鍵字分別會在"highlight_desc|keywords|page_title|description"中出現。如關鍵字“42L大容量”,"一鍵菜單"。我現在是搜索一個關鍵字是有數據的,如果組合起來就沒有數據。想要的結果是,只要關鍵字在任何一個字段中都要有結果顯示。代碼$goods = D('GoodsserialView'); $where = array('goods.cate'=>$cate, 'goods.status'=>1);              $keywords = '%'.$keys.'%'; $where['highlight_desc|keywords|page_title|description'] = array('LIKE', $keywords);
查看完整描述

1 回答

?
繁花如伊

TA貢獻2012條經驗 獲得超12個贊

  • 建議采用原生SQL 使用 MySQL的 concat() 方法將需要匹配的字段用特定字符隔開連接起 然后再用 LIKE ,

  • 其次需要注意使用IFNULL來判斷字段為NULL就使用空字符串代替,不然會因為一個NULL 導致整個連接為NULL,從而查不到結果。

  • 如果其中一個字段內容比較多 那就最好排除那個字段 用 or 再 LIKE 一下。


查看完整回答
反對 回復 2019-01-05
  • 1 回答
  • 0 關注
  • 740 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號