
64
да – Возврат ошибки;
нет – Инициализация выходного массива;
цикл «Для каждой строки результата»:
o скопировать строку в выходной массив;
возврат выходного массива в вызывающий модуль.
Ниже представлен фрагмент SQL-кода фильтрации заявок:
p1.id_request, p1.id_status, p1.id_priority, p1.id_type, p1.id_user, p1.description, p1.contacts,
p1.id_repairer, p1.comment, p1.price,
p2.status, p3.priority, p4.type
FROM requests AS p1
INNER JOIN statuses AS p2 ON p2.id_status=p1.id_status
LEFT JOIN priorities AS p3 ON p3.id_priority=p1.id_priority
LEFT JOIN types AS p4 ON p4.id_type=p1.id_type
WHERE 1 AND p1.id_status=$id_status
AND p1.id_priority=$id_priority
AND p1.id_type=$id_type
AND p1.id_repairer=$id_repairer
AND p1.contacts like '%$contacts%'
AND p1.id_repairer=$id_user"
Здесь применяется оператор пересечения множеств INNER JOIN (рисунок
29), а также LEFT OUTER JOIN (рисунок 30).
Рисунок 29 – Операция INNER JOIN
Рисунок 30 – Операция LEFT OUTER JOIN