认为这是我所需要的查询:如何使用LIKE在Mysql中使用嵌套的SELECT?
SELECT * FROM `products` WHERE `keywords` LIKE "%(SELECT `key` FROM `keywords` WHERE `slug` = '%d8%af%db%8c%d9%88%d8%a7%d8%b1' LIMIT 1)%"
目前,它不工作,同时也有满足条件的记录返回结果为零。
我想知道这里有什么问题?
认为这是我所需要的查询:如何使用LIKE在Mysql中使用嵌套的SELECT?
SELECT * FROM `products` WHERE `keywords` LIKE "%(SELECT `key` FROM `keywords` WHERE `slug` = '%d8%af%db%8c%d9%88%d8%a7%d8%b1' LIMIT 1)%"
目前,它不工作,同时也有满足条件的记录返回结果为零。
我想知道这里有什么问题?
这应该工作:
SELECT *
FROM products
WHERE keywords LIKE
CONCAT('%', (SELECT `key` FROM `keywords`
WHERE `slug` = '%d8%af%db%8c%d9%88%d8%a7%d8%b1' LIMIT 1), '%');
试试这个,不知道这是否会工作...
SELECT * FROM products
WHERE keywords LIKE "%" + (SELECT key FROM keywords WHERE slug = 'something' LIMIT 1) + "%";
愚蠢, '+' 不连接字符串在MySQL - 仅在短短关于其他所有SQL数据库。 –
谢谢,它的工作。 –