2015-09-22 87 views
2

我有一個工作的SELECT語句。但是,我想知道是否可以使用單詞'one'代替單詞'one'。在'one'的左側和右側使用空格,以確保它不是另一個單詞的一部分。所以,舉個例子,如果這個詞是'someone'的話,它就不會被選中。請看看我的代碼。在SELECT語句中向單詞的左側和右側添加空格

SELECT input, (CHAR_LENGTH(input) - CHAR_LENGTH(replace(input, 'one', '')))/CHAR_LENGTH('one') AS matches 
FROM allData 
HAVING matches >= CEIL(CHAR_LENGTH(input)/5) 
AND matches = ( 
SELECT MAX((
(CHAR_LENGTH(input) - CHAR_LENGTH(replace(input, 'one', '')))/CHAR_LENGTH('one') 
)) 
FROM allData) 

我試圖用「一」,而不是「一」,但是當我這樣做,而以前,只用「一」,它返回2行的結果是沒有返回結果。下面是一個人誰sqlFiddle要測試的實際代碼好自爲之:

http://sqlfiddle.com/#!9/136e3/2

回答

-1

你可以試試這個:

SELECT * 
FROM allData 
WHERE (input like '% one %' 
     OR input like '% one' 
     OR input like 'one %' 
     OR input like 'one') 
+0

這是公認的答案,但還是有人downvoted。奇怪。 – RubahMalam