-1

なぜこれが機能しないのかわかりません。誰かが私がする必要があることを説明できますか?

SET @my_list = '2,6,8,10,12,13,14,18,19,21';

DELETE FROM my_table WHERE my_table.table_id IN (@my_list);
4

1 に答える 1

1

@my_list を単一の ID として解釈しているため、ID が文字列「2,6,8,10,12,13,14,18,19,21」である my_table から削除するように要求しています。

あなたは試すことができます

SET @my_list = '2,6,8,10,12,13,14,18,19,21';
SET @exec = CONCAT('DELETE FROM my_table WHERE my_table.table_id IN (', @my_list ,')');
EXECUTE (@exec);
于 2011-10-18T23:43:25.400 に答える