0

1つのクエリで複数の行を削除する解決策があるかどうか知りたいですか?

複数の入力を持つselect要素を使用しているため、フォームを送信するときに$_POSTに配列があります。

たとえば、1つのテーブルから複数のレッスンへのユーザーの登録を解除したいので、次のようになります。

users.id | lesson.id
--------------------
1        | 1
1        | 2
1        | 3
1        | 4

私の選択は、lesson.idを使用して配列を投稿します。

Array
(
    [0] => 2
    [1] => 3
    [2] => 4
)

クエリを1つだけ使用して、テーブルからすべての行を削除するにはどうすればよいですか?

ところで、私はusers.idを常に知っています。

4

1 に答える 1

2

lesson_idこれら3つだけを削除したい場合

delete from lesson_table
where users_id = 1 and lesson_id in (2, 3, 4)

1つを除くすべての任意のレッスンを削除したい場合で、ユーザー1には4つのレッスンがあることがわかっている場合はlimit、3つのlesson_idsに削除できます。

delete from lesson_table
where users_id = 1
limit 3
于 2012-12-10T23:55:37.563 に答える