テーブルでIDが163〜265の行を削除するSQLクエリを実行しようとしています
削除する行の数を減らしてみました
DELETE FROM `table` WHERE id IN (264, 265)
しかし、一度に数百の行を削除することになると、上記の方法に似たクエリがありますか?この種類のクエリを使用しようとしていますが、実行に失敗しました
DELETE FROM `table` WHERE id IN (SELECT * FROM table WHERE id = )
上記のアクションを実行するためのクエリを教えてください...
リストに基づいて削除する必要がある場合は、IN
を使用できます。
delete from your_table
where id in (value1, value2, ...);
クエリの結果に基づいて削除する必要がある場合は、IN
も使用できます。
delete from your_table
where id in (select aColumn from ...);
(サブクエリは1列のみを返す必要があることに注意してください)
値の範囲に基づいて削除する必要がある場合は、BETWEEN
を使用するか、不等式を使用します。
delete from your_table
where id between bottom_value and top_value;
または
delete from your_table
where id >= a_value and id <= another_value;
BETWEEN
を使用できます。
DELETE FROM table
where id between 163 and 265
これを試してください:
DELETE FROM `table` WHERE id >=163 and id<= 265
Delete Id from table where Id in (select id from table)