0
我有以下简单的表结构和事先准备好的声明:MySQL的准备报告问题
create table junk1(name varchar(10), state varchar(10));
create table junk2(state varchar(100));
insert into junk2(state)values("state like '%Tex%'"),("state like '%Neb%'"),("state like '%Was%'");
insert into junk1(name, state) values ('asa', 'Texas'), ('dff', 'Washing'), ('fgfgf', 'Oklahoma'), ('bbb', 'Nevada'), ('hhh', 'Texas'), ('jjj', 'Nebraska');
SET @va = '';
select group_concat(state separator ' OR ') into @va from junk2;
PREPARE stmt1 FROM 'select * from junk1 where ?';
execute stmt1 using @va;
deallocate prepare stmt1;
我没有得到的结果如预期。我没有得到任何结果。我在这里做错了什么?
你是个大BOSS。我不能直接使用concat,而是对你的答案做一个小的改动:而不是在prepare stmt中使用concat,我将它分配给另一个变量,如下所示:PREPARE stmt1 FROM @ba;执行stmt1 – BoCode
好吧,不知道这一点,相应地改变我的答案 – Psi
你是对的Psi ..我想通了,并接受你的答案..可以给你一千个祝福你。 – BoCode