Dequeue Anda bisa lebih ringkas. Daripada mengandalkan pengembalian transaksi, Anda dapat melakukannya dalam satu pernyataan atom tanpa transaksi eksplisit:
UPDATE jobs SET process_id = ? WHERE process_id IS NULL ORDER BY ID ASC LIMIT 1;
Kemudian Anda dapat menarik pekerjaan dengan (tanda kurung [] berarti opsional, tergantung pada detail Anda):
SELECT * FROM jobs WHERE process_id = ? [ORDER BY ID LIMIT 1];