Ich habe eine Tabelle teams
mit 30 Zeilen und hat eine Handvoll Statistiken als Attribute gespeichert. Zum Beispiel Ziele für, Ziele gegen usw. und ich habe eine Ansicht erstellt, die rank() verwendet und die Datensätze gut sortiert. Hier ist eine verkürzte Abfrage Beispiel und die daraus resultierende Tabelle:Wie Konto Postgresql Rang() Bindungen
SELECT name,
points,
rank() OVER (ORDER BY points DESC) AS point_tank
FROM teams;
name | points | point_rank
-----------------------+-----------+----------------
Team 1 | 14 | 1
Team 2 | 11 | 2
Team 3 | 9 | 3
Team 4 | 9 | 3
Ich mag würde eine zusätzliche Spalte hinzufügen, die boolean zurückgeben würde, basierend auf, ob der Rang ist eine Krawatte. zB Team 3 und Team 4 in diesem Beispiel. Es könnte in etwa so aussehen:
name | points | point_rank | tie
-----------------------+-----------+----------------+----------------
Team 1 | 14 | 1 | false
Team 2 | 11 | 2 | false
Team 3 | 9 | 3 | true
Team 4 | 9 | 3 | true
Irgendwelche Ideen hier? Oder nähere ich mich dem hier falsch und missbrauchen Rang()? Danke im Voraus!
Danke, das funktioniert, und es hat mir geholfen, zu verstehen CTEs besser. –