2012-06-29 3 views
0

Как я могу оптимизировать этот запрос?Оптимизировать DELETE FROM с предложением WHERE

DELETE FROM item WHERE id = 1002; 
DELETE FROM item WHERE id = 1003; 
DELETE FROM item WHERE id = 102232; 
DELETE FROM item WHERE id = 12322; 

Это выход?

DELETE FROM item WHERE id = 1002 OR id = 1003 OR id = 102232 OR id = 12322; 

Мне очень нужен ум эксперта!

+0

сколько строк вы пытаетесь удалить? 1000, 10000? – Martin

ответ

2
DELETE FROM item WHERE id IN (1002,1003,102232,12322) 

Это проще, но что вы имеете в виду оптимизированной (быстрее?)

+0

Да, быстрее! Мне нужно удалить много строк из таблицы! –

+0

Ну, если у вас есть индекс на вашем id, он должен быть достаточно быстрым с одним запросом. Вы можете легко проверить, какой из них быстрее, создав/удалив много строк. –

Смежные вопросы