Мне нужно написать хранимую процедуру, которая возвращает мне клиентов, которые попадают в определенный сегмент, из-за их покупательского поведения в определенный период времени.
Для этих клиентов поле сегмента будет установлено в true, а те, которые не выходят из данного запроса, должны быть установлены в false, если их сегмент был истинным.
У меня проблема с самой процедурой, с типом возврата, я думаю, кто-то может помочь с этим.
Можно ли задать значения, которые не выходят из запроса, значением FALSE, не работая с временной таблицей?
CREATE OR REPLACE FUNCTION segment_men1() AS
RETURNS void AS
$BODY$
BEGIN
FOR r IN
SELECT AD.id FROM account AD
INNER JOIN transactions TRA ON TRA.customerID = AD.id
WHERE AD.gender = "male"
AND TRA.transactionDate >= current_date - interval "365" days;
LOOP
UPDATE account
SET Segment_Men = true
WHERE NEXT r;
END LOOP;
RETURN;
END
$BODY$
LANGUAGE 'plpgsql';
Большое спасибо за вашу помощь