0
一個字符串匹配一個連接字符串,這裏是我的查詢:MySQL的WHERE在PHP
SELECT * FROM events WHERE (audience like '%Internal%20Medicine%') and ('$date' < end_date) order by end_date
在觀衆列看起來像這樣「內科,神經內科,放射學」數據庫。
我需要查詢來匹配逗號之間的確切字符串。
一個字符串匹配一個連接字符串,這裏是我的查詢:MySQL的WHERE在PHP
SELECT * FROM events WHERE (audience like '%Internal%20Medicine%') and ('$date' < end_date) order by end_date
在觀衆列看起來像這樣「內科,神經內科,放射學」數據庫。
我需要查詢來匹配逗號之間的確切字符串。
這裏是一個辦法做到這一點:
SELECT *
FROM events
WHERE find_in_set('Internal Medicine', replace(audience, ', ', ',')) > 0 and ('$date' < end_date)
order by end_dat;
太棒了!我之前嘗試過find_in_set,但它不起作用,我想我沒有意識到逗號後的空格。 – Stephen
你是如何構建查詢? –
看看[這個問題](http://stackoverflow.com/q/12613926/1438733),它做同樣的事情,但空間分隔。基本上你想匹配'%,X','X,%','%,X,%'和'X',其中'X'是搜索字符串。你也可以做一個正則表達式搜索,但這不是很有效。 – Eric