Om den här frågan tar lång tid:
delete from PlanItems p where p.jobId = :jobid
och du har ett index på PlanItmes(jobId)
-- där jobId
är den första kolumnen i indexet -- då måste du överväga andra frågor.
-
Finns det överlappande främmande nyckelbegränsningar som använder
jobId
? Om så är fallet kan kaskaderna påverka dessa tabeller -- och om de är överlappande borttagningar kan det påverka fler tabeller om de raderas. -
Finns det en raderingsutlösare på bordet? Om så är fallet kan dina "enkla" borttagningar göra mycket mer arbete än du tror.
-
Är det en stor belastning på systemet? Om så är fallet kan tiden helt enkelt vänta på en möjlighet att ta bort raderna.
-
Byggs materialiserade synpunkter på bordet? Om så är fallet kanske de uppdateras.
Om inget av dessa är fallet kan det bero på hur du mäter den förflutna tiden.