无法从表中删除

时间:2012-04-23 08:38:53

标签: mysql stored-procedures

这是一段mysql代码

DELETE FROM tbl_node_details WHERE ParentId IN (1,2,3,4,5);

此工作正常,所有行都将删除相应的ID。 但什么时候这样做

SET @a='1,2,3,4,5'
DELETE FROM tbl_node_details WHERE ParentId IN (@a);

它不起作用......是吗?

3 个答案:

答案 0 :(得分:0)

您不能在in语句中使用参数。尝试循环或构建字符串wo参数

答案 1 :(得分:0)

无法在查询语句中使用参数。尝试使用循环。

答案 2 :(得分:0)

正如@hkutluay所说,这不起作用。 假设您可以从另一个表中获取参数:

DELETE FROM tbl_node_details WHERE ParentId IN (SELECT <id_col_name> FROM <other_table> WHERE <condition>);