Блокирует выбранные строки до конца транзакции. Другая транзакция с SELECT FOR UPDATE или изменением этих строк будет ждать (или откатится при nowait). Используется для пессимистичной блокировки при "прочитал-изменил-записал". FOR UPDATE SKIP LOCKED - пропускать уже заблокированные строки (очереди задач). FOR SHARE - блокировка на чтение (shared lock).
SELECT * FROM orders WHERE id = 1 FOR UPDATE;