0
所以我有兩個表一個是問題它有一個描述字段,我試圖匹配主題表search_keyword字段。MYSQL匹配字段到逗號分隔的關鍵字的另一個字段
例如問題表描述字段有這樣的:
q.description
-------------
Have you ever traveled to China?
而且對主題表SEARCH_KEYWORD領域具有這樣的:
t.search_keywords
-------------
travel, traveled, traveling, traveler, travel agency, jet set
所以基本上我試圖縮小爲一個結果集基於具有任何關鍵字的描述的問題。
這是我的查詢到目前爲止,我給出的主題URL是一個可以縮小一些東西的字段,但是必須通過將描述與search_keywords相匹配來縮小範圍。
SELECT * FROM question q
LEFT JOIN topic t ON t.category_id = q.category_id
WHERE t.url = 'travel' AND
FIND_IN_SET(q.description, t.search_keywords)
注:我不能更改數據庫不幸
任何幫助,將不勝感激!
我沒有那個選項,數據庫不能改變。如果你可以修改逗號的答案,這將是非常感謝。 –
@JCLopez - 這就是規範化非常重要的原因。您可以按照[此答案](http://stackoverflow.com/a/17942691/6348498)在加入之前將CSV值轉換爲單獨的行。 – GurV
我同意,但它是一個頑固的客戶,不想改變它。我看到了CSV值解決方案,但似乎無法在小提琴上工作。我試圖使用RLIKE最壞的情況,我將不得不使用PHP來縮小問題的範圍。 –