0

ここに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);

うまくいかない…そうですか??

4

3 に答える 3

0

in ステートメントではパラメーターを使用できません。パラメータを使用して文字列をループまたは構築してみてください

于 2012-04-23T08:41:54.990 に答える
0

クエリ ステートメント内でパラメーターを使用することはできません。ループを使用してみてください。

于 2012-04-23T08:43:18.183 に答える
0

@hkutluay が述べたように、これは機能しません。別のテーブルからパラメーターを取得すると仮定すると、次のことができます。

DELETE FROM tbl_node_details WHERE ParentId IN (SELECT <id_col_name> FROM <other_table> WHERE <condition>);
于 2012-04-23T08:44:04.727 に答える