我有一个 mySQL 通配符查询不起作用,可能是因为我使用 InnoDB 而不是 MyISAM。
SELECT a.product_id, a.category_id FROM products a
LEFT JOIN users u ON u.userid=a.ownerid
WHERE a.active=1 AND a.approved=1
AND a.deleted=0 AND a.name LIKE '%*my*%'
AND a.name LIKE '%*donuts*%'
AND (a.name REGEXP '( )*(*my*)*( )*(*donuts*)( )*')
每当使用单词而不是通配符时,它都可以正常工作,这不是问题。
我只是想知道,是
(a.name REGEXP '( )*(*my*)*( )*(*donuts*)( )*')
已经做了一个之后真的需要
LIKE '%*my*%' AND a.name LIKE '%*donuts*%'
有什么不同?