I have query that creates a column on the fly like so:
SELECT 
v_list_client.id AS "id",
EXISTS(
  SELECT id FROM message 
  WHERE to_phone_number = v_list_client."phoneNumber" 
    AND  created_by_agent_id != 
  (SELECT id FROM agent WHERE agent_role_id = (
    SELECT id FROM agent_role WHERE label = 'Bot'))
) AS "hasReceivedMessageFromAgent",
*
FROM v_list_client
LEFT JOIN v_form
ON (v_form."client" ->> 'id')::integer = id
WHERE (v_form."formTypeId")::integer = 1
AND (v_form."isReceived")::boolean = true
HAVING "hasReceivedMessageFromAgent" = true
I'd like for the HAVING clause to only return results if the client has received a message from an agent, i.e if the hasReceivedMessageFromAgent column is true.
 
    