我想使用LIKE
在一列(varchar
列)中找到一個數字,我正在使用像這樣的語句SELECT * FROM MYTABLE WHERE mynumberslist LIKE '%76%'
。數據存儲如下:nums =; 76; 78; 80; 81; 176;那麼,我該如何去搜索76,因爲如果我只是做LIKE %76%
我會得到76和176返回有沒有反正呢?我沒有設計數據庫,也沒有控制存儲的數據,我只負責編寫一個程序來獲取數據。使用MySQL喜歡用符號搜索一個數字
回答
使用正則表達式匹配:
SELECT *
FROM MYTABLE
WHERE mynumberslist RLIKE '\b76\b'
這將匹配即使你沒有在最後一個尾隨;
做 - 它匹配字 76(\b
意味着正則表達式「單詞邊界」)
這是因爲剛剛
LIKE '%;76;%'
PS一樣簡單:發送hello到數據庫模式的作者並捐贈了他一些錢購買任何DB-設計相關的書
+1我不得不承認...你的答案是比我好:) [KISS原則(http://en.wikipedia.org/wiki/Keep_it_simple_stupid ) – Bohemian 2012-02-12 19:49:09
我試過了,但我從未得到任何結果,當我在select語句中使用分號時 – atrljoe 2012-02-12 19:51:03
@atrljoe:如果您給了我們正確的數據樣本'nums =; 76; 78; 80; 81; 176;' - 那麼它應該工作。如果沒有 - 那麼你需要用**實際**數據來糾正這個問題,這樣我們才能修復答案。 – zerkms 2012-02-12 19:52:43
SELECT *
FROM MYTABLE
WHERE ';' + mynumberslist + ';' LIKE '%;76;%';
- 1. MYSQL喜歡搜索2表
- 2. Mysql喜歡與多個列的搜索
- 3. Vim CommandT喜歡搜索字符串
- 4. MySQL的搜索喜歡用文字うえ
- 5. Mysql搜索引擎喜歡和匹配
- 6. MYSQL多樣喜歡搜索位置
- 7. 搜索引擎喜歡用於java字符串搜索的語法
- 8. Android搜索欄喜歡谷歌應用
- 9. PHP PDO喜歡(搜索)
- 10. MySQL的使用 '喜歡' 和 'IN' 一起
- 11. $ _GET帶有URL敏感符號的變量? (喜歡搜索)
- 12. 如何使用關鍵字「喜歡」來搜索MySQL表值的模式
- 13. SQL喜歡多個字符
- 14. Codeigniter喜歡在幾個表中搜索
- 15. mySQL喜歡,但不喜歡
- 16. 在SQL Server中使用「喜歡」如何搜索數據
- 17. 使用Javascript:找到點擊索引與數組喜歡編號
- 18. 喜歡搜索每個逗號分隔值
- 19. 使用「喜歡」
- 20. MySQL的喜歡與特殊字符「
- 21. 谷歌喜歡搜索字符串解析爲sql
- 22. Postgresql:搜索字段包含製表符。 (與喜歡)
- 23. 如何工作搜索查詢喜歡或喜歡和狀態
- 24. Mysqli喜歡不使用撇號?
- 25. 使用MySQL和PHP搜索字符串
- 26. 使用mysql regexp搜索字符串
- 27. 谷歌喜歡在SQL Server中使用全文搜索的搜索查詢
- 28. 使用「喜歡」在CakePHP中返回搜索結果
- 29. Div喜歡搜索使用dat過濾器屬性
- 30. 使用全文搜索而不是「喜歡'%____%'查詢
如果不能保證前導分號和尾隨分號,也可以使用CONCAT來添加它們,以避免使用正則表達式 – zerkms 2012-02-12 19:54:06