[英]SQL Query to Search for String within a String (but the string may be separated)
我無法弄清楚能夠基於包含字符串的列選擇行的SQL查詢,但是可以將字符串分隔開。
例如,我正在搜索的字符串:
1345
會匹配:
0123456
這包括三件事:
1)之前的任何字符串
2)之后的任何字符串
3)中間的任意字符串
我嘗試使用以下查詢
SELECT * FROM Products WHERE FileName LIKE %1345%
SELECT * FROM Products WHERE CONTAINS(FileName, '1345')
但是,如果字符串隨機位於中間,則不會選擇這些選項。 我應該怎么做呢?
您需要為正則表達式匹配做准備,所以您會產生這樣的查詢
SELECT * from name1
WHERE name1.name REGEXP ".*a.*p.*a.*"
這是在MySQL Workbench中測試的有效解決方案:
SELECT * FROM Products WHERE FileName LIKE '%1%2%3%';
它匹配像這樣的條目
2004267695、2005285881、20060004841、20060136398、20080189084和20090189887。
對開8 1/2 x 13英寸
1992-2003
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.