PostgreSQL: Extraction de la dernière ligne pour chaque identifiant unique
Dans PostgreSql, vous pouvez rencontrer des situations de données où vous avez besoin d'extraire les informations de la dernière ligne associée à chaque identifiant distinct dans un ensemble de données. Considérez les données suivantes:
select distinct on (id) id, date, another_info from the_table order by id, date desc;2 2014-02-01 SADA
3 2014-06-12 fdSa
pre> Une solution de database croisée qui peut sacrifier de légères performances, vous pouvez utiliser une fonction de fenêtre:
select id, date, autre_info
depuis (
Sélectionnez ID, date, autre_info,
row_number () over (partition by id ordonnance by date dec) comme rn
du_table
) t
où rn = 1
Ordre par id;
Dans la plupart des cas, la solution impliquant une fonction de fenêtre est plus rapide que d'utiliser une sous-question.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3