MySql WHERE LIKE 在特定字符之前?
MySql WHERE LIKE before particular character?
我必须从两列中搜索特定单词,但在一列中我必须在 * 字符之前搜索。所以我使用了 SELECT * FROM table_name WHERE status = 'Enable' AND topic LIKE '%car%' OR category LIKE '%car%'
现在问题是它是 returning 美容栏也因为它的类别栏有 care 这个词,现在我必须做到,如果第一个 * 之前包含的单词必须 return.
+--------+---------------------------------------------------------------------------+---------+
| topic | category | status |
+--------+---------------------------------------------------------------------------+---------+
| car | cars & vechicles*cars* | Enabled |
+--------+---------------------------------------------------------------------------+---------+
| beauty | Fashion, Health & Beauty*Health and Beauty Products*Body Care / Skin Care | Enabled |
+--------+---------------------------------------------------------------------------+---------+
此查询应该可以解决您的问题:
SELECT * FROM table_name WHERE
status = 'Enable' AND topic LIKE '%car%' OR SUBSTRING_INDEX(category,'*',1) LIKE '%car%'
您可以像这样添加“%*”来对您的查询进行简单的修改:
SELECT * FROM table_name WHERE status = 'Enable' AND topic LIKE '%car%' OR category LIKE '%car%*%'
我必须从两列中搜索特定单词,但在一列中我必须在 * 字符之前搜索。所以我使用了 SELECT * FROM table_name WHERE status = 'Enable' AND topic LIKE '%car%' OR category LIKE '%car%'
现在问题是它是 returning 美容栏也因为它的类别栏有 care 这个词,现在我必须做到,如果第一个 * 之前包含的单词必须 return.
+--------+---------------------------------------------------------------------------+---------+
| topic | category | status |
+--------+---------------------------------------------------------------------------+---------+
| car | cars & vechicles*cars* | Enabled |
+--------+---------------------------------------------------------------------------+---------+
| beauty | Fashion, Health & Beauty*Health and Beauty Products*Body Care / Skin Care | Enabled |
+--------+---------------------------------------------------------------------------+---------+
此查询应该可以解决您的问题:
SELECT * FROM table_name WHERE
status = 'Enable' AND topic LIKE '%car%' OR SUBSTRING_INDEX(category,'*',1) LIKE '%car%'
您可以像这样添加“%*”来对您的查询进行简单的修改:
SELECT * FROM table_name WHERE status = 'Enable' AND topic LIKE '%car%' OR category LIKE '%car%*%'