Mysql在WHERE LIKE中排序优先级
我是MySQL的新手。请帮我找出我做错了什么。 使用这个问题,我尝试对行进行排序,但结果与未排序的结果相同。 下面是一个查询示例:Mysql在WHERE LIKE中排序优先级,sql,case,sql-like,Sql,Case,Sql Like,我是MySQL的新手。请帮我找出我做错了什么。 使用这个问题,我尝试对行进行排序,但结果与未排序的结果相同。 下面是一个查询示例: SELECT * FROM sc_products WHERE name_ru = 'water' OR name_ru like 'water%' OR name_ru like '% water%' OR name_ru like '\"water%' OR brief_description_ru like '%water%' OR product_
SELECT * FROM sc_products
WHERE name_ru = 'water'
OR name_ru like 'water%'
OR name_ru like '% water%'
OR name_ru like '\"water%'
OR brief_description_ru like '%water%'
OR product_code like '%water%'
OR product_code in (select product_code from ALLPRODUCTS where searchfilter like '%water%')
OR product_code in (select product_code from SC_products prd JOIN SC_product_manufacturers mnf ON prd.manufacturerID=mnf.manufacturerID where mnf.filters like '%water%')
ORDER BY CASE
WHEN (name_ru = 'water' AND
name_ru like 'water%' AND
name_ru like '% water%' AND
name_ru like '\"water%' AND
brief_description_ru like '%water%' AND
product_code like '%water%')
THEN 1
ELSE 2
END
我没有找到其他地方回答我的问题。对不起。您应该使用或代替和在箱子内