Вопросы к Поиску с Алисой
Основное отличие циклов FOR и FOREACH в PostgreSQL в том, что первый работает со строками запроса, а второй — с элементами массива. www.postgresql.org postgrespro.ru
FOR создаёт цикл, в котором итерации выполняются по диапазону целых чисел. www.postgresql.org postgrespro.ru Если не указано BY, то шаг итерации равен 1, в противном случае используется значение из BY, которое вычисляется один раз при входе в цикл. postgrespro.ru Если указано REVERSE, то после каждой итерации величина шага вычитается, а не добавляется. www.postgresql.org postgrespro.ru
FOREACH похож на FOR, но вместо перебора строк SQL-запроса происходит перебор элементов массива. www.postgresql.org postgrespro.ru Без указания SLICE или если SLICE равен 0, цикл выполняется по всем элементам массива, полученного из выражения. postgrespro.ru Переменной цель последовательно присваивается каждый элемент массива и для него выполняется тело цикла. postgrespro.ru При положительном значении SLICE FOREACH выполняет итерации по срезам массива, а не по отдельным элементам. postgrespro.ru