I'd write it more like this:
DELETE FROM
dbo.tbItem
FROM
dbo.tbItem I
INNER JOIN dbo.tbProductionOrder PO
ON (I.POID = PO.POID)
WHERE
PO.PODescription LIKE '%00000%'
You could also encolse this is a while loop and delete records in smaller batches.
declare @recordstodelete int,
@recordsdeleted int;
set @recordstodelete = 5000;
while (@recordsdeleted is null)
or (@recordsdeleted <> 0)
begin -- while
DELETE TOP (@recordstodelete) FROM
dbo.tbItem
FROM
dbo.tbItem I
INNER JOIN dbo.tbProductionOrder PO
ON (I.POID = PO.POID)
WHERE
PO.PODescription LIKE '%00000%'
set @recordsdeleted = @@rowcount
-- BACKUP LOG ... -- a transaction log backup could be coded here to manage t-log size
end -- while
😎