So, I have a workaround, which is to combine the request and the parameters to pseudo
CREATE PROCEDURE `related_stories`(IN param1 VARCHAR(255), IN param2 VARCHAR(255), IN param3 VARCHAR(255), IN publishDate INT(11), IN tlimit INT(11)) BEGIN SET @query =CONCAT( ' select s.* from ( select * from ( SELECT something where condition IN (',param1,') ) as table1 UNION ALL select * from ( SELECT something where condition IN (',param2,') ) as table2 UNION ALL select * from ( SELECT something where condition IN (',param3,') ) as table3 ) as s WHERE (s.publish_date < ',publishDate,') GROUP BY id limit ',tlimit,';'); PREPARE stmtInsert FROM @query; EXECUTE stmtInsert; END
param1, param2, param3 are modulated arrays that are passed through php, for example, ('1,2,3,4'). Hope this helps someone.
Akeem
source share