使用类似%string%的Concat选择查询

时间:2015-10-20 13:40:00

标签: mysql concat

以下是无效的简化查询。

SET @abc = CONCAT('%','string','%');

SET @query = CONCAT('SELECT * 
FROM table 
WHERE column LIKE ',@abc);

PREPARE stmt FROM @query;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;

我需要在SELECT中使用CONCAT,因为在真实查询中有很多其他变量。

当我在 WHERE 子句中使用一些简单的 COLUMN = xyz 时,真正的查询工作正常。但是当我尝试使用 LIKE%xyz% ...

时无效

1 个答案:

答案 0 :(得分:1)

像这样使用

SET @abc = CONCAT('"%','string','%"');

SET @query = CONCAT('SELECT * 
 FROM table 
WHERE column LIKE ',@abc);

PREPARE stmt FROM @query;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;

检查我添加的第一行“显示@abc like”%string%“