Ich habe eine Auswahl, die zwei Tabellen verbindet, a
und b
, über eine Join-Tabelle, ab
.Inkrementieren Zeilennummern für unzweideutige Zeilen in einer Verknüpfung auswählen
select a.*, b.*
from a
left join ab on a.id = ab.aid
left join b on b.id = ab.bid;
Und das erzeugt
id | athing | id | bthing
----+----------+----+-----------
7 | athing x | 1 | bthing a
7 | athing x | 2 | bthing b
7 | athing x | 3 | bthing c
3 | athing y | 1 | bthing a
(4 rows)
Ich möchte eine Spalte, die schrittweise die Anzahl der Zeilen in a
zählt. Das heißt:
count | id | athing | id | bthing
-------+----+----------+----+-----------
1 | 7 | athing x | 1 | bthing a
1 | 7 | athing x | 2 | bthing b
1 | 7 | athing x | 3 | bthing c
2 | 3 | athing y | 1 | bthing a
(4 rows)
ich mit der Fensterfunktion row_number()
ausgesehen haben, aber das scheint alle Zeilen zu zählen.
Ich möchte inkrementell die verschiedenen a
Zeilen zählen, unabhängig davon, wie viele Zeilen die verbundene Tabelle erstellt.
Ist dies in Postgresql möglich? Vielen Dank.