Besoin d'aide avec une requête : recherche par nom d'utilisateur au lieu de user_id

Veuillez m’aider à modifier la recherche. Je dois rechercher par nom d’utilisateur au lieu de l’identifiant utilisateur.

Voici ma requête :

-- [params]
-- string :query = white_check_mark
-- integer :user
-- date :start_date
-- date :end_date

SELECT created_at, topic_id, p.id as post_id FROM posts p
LEFT JOIN post_search_data psd ON psd.post_id = p.id
WHERE psd.search_data @@ TO_TSQUERY(:query)
AND user_id = :user
AND p.created_at BETWEEN :start_date::date
AND :end_date::date

J’espère que cela vous sera utile.

-- [params]
-- string :query = white_check_mark
-- string :user
-- date :start_date
-- date :end_date

SELECT 
    p.created_at, 
    p.topic_id, 
    p.id as post_id 
FROM posts p
LEFT JOIN users u ON (p.user_id = u.id)
LEFT JOIN post_search_data psd ON psd.post_id = p.id
WHERE psd.search_data @@ TO_TSQUERY(:query)
      AND LOWER(username) LIKE '%'||LOWER(:user)||'%'
      AND p.created_at BETWEEN :start_date::date
      AND :end_date::date

Oui, cela fonctionne. Merci de votre temps !