SQLite / MySQL使用LIKE或REGEXP来匹配String中的特殊内容单词

时间:2018-05-03 19:00:09

标签: mysql sqlite mysql-workbench

我有一个具有这种结构的SQLite数据库表。

    data_table
    |id| string_id | ...
    |1 | 1         | ...
    |2 | 1/111-2   | ...
    |3 | 2/111-2   | ...
    |4 | 2/55-1    | ...

" /"和" - "分隔符用于" string_id"的数据。列。

当用户输入" 1"时,结果应包含行号1,2和4.(不应包含第3行)

当用户输入2时,结果应包含行号2,3和4。

我当前的查询语句是

SELECT * FROM data_table WHERE 
string_id = "user_value" OR 
string_id LIKE "%-user_value" OR 
string_id LIKE "%/user_value" OR 
string_id LIKE "user_value-%" OR 
string_id LIKE "user_value/%" OR 
string_id LIKE "%-user_value-%" OR 
string_id LIKE "%/user_value/%" OR 
string_id LIKE "%-user_value/" OR 
string_id LIKE "%/user_value-"

是否还有其他有效且有价值的解决方案来替换此查询?

0 个答案:

没有答案