我想基於這些表在我的應用程序中實現搜索功能。如何在Mysql中實現搜索查詢
我有搜索頁面上的5場
- 輸入框 - 標題
- 作者關鍵字或詞 - 選擇框(AUTHOR_ID將被傳遞給函數的值)
- 類別名稱 - 選擇框(category_id將作爲值傳遞給函數)
- themonth - 從1 - 12中選擇框
- themear - 選擇框從2000 - 2012
我想從基於這些規則創建一個搜索查詢,
- 結果陣列將
insights
進行排序。read_time
,(該文章已閱讀多少次) - 只希望得到
article
。article_id
過早工作工作的例子就是在這裏
我運行以下查詢來獲取,但它是不完整的 https://leading-people.com/search
選擇
article
。article_id
FROMarticle
其中article
。is_active
='1'AND(content
LIKE'%%'或title
LIKE '%%'或tags
LIKE'%%')UNION ALL SELECTarticle
。article_id
FROMkeywords
INNER JOINarticle
其中article
。is_active
= '1' AND(article
。article_id
=keywords
。article_id
ANDkeywords
。keywordtext
LIKE '%%')
article
TABLE COLUMNS
article_id
(PRIMARY)is_active
title
themonth
theyear
表article_author
點評:此表僅供參考筆者的細節是另一個表。所以這些身份證僅供參考。
COLUMNS
article_author_id
(PRIMARY)author_id
article_id
TABLE article_categories
評論:本表只供參考類別詳細信息是在另一個表。所以這些身份證僅供參考。
COLUMNS
article_categories_id
(PRIMARY)article_id
categories_id
TABLE insights
評論:本表只供參考類別詳細信息是在另一個表。所以這些身份證僅供參考。
COLUMNS
insights_id
(PRIMARY)article_id
read_time
TABLE keyword
評論:本表只供參考類別詳細信息是在另一個表。所以這些身份證僅供參考。
柱
keyword_id
(主)article_id
keywordtext
希望!我已經正確格式化了,所以每個人都能理解!
你真的應該看看這個全文檢索; LIKE'%blah%'查詢將永遠無法利用索引,並且隨着數據集的增長,它們將非常慢。請參閱:http://dev.mysql.com/doc/refman/5.0/en/fulltext-search.html –