# ROW\_NUMBER() liefert mehrfach "1"

**URL:** https://www.pg-forum.de/t/row-number-liefert-mehrfach-1/12658
**Category:** SQL
**Created:** [10. Januar 2023 um 12:25 UTC](https://www.pg-forum.de/t/row-number-liefert-mehrfach-1/12658 "2023-01-10T12:25:37Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![PGmicha](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/p/f05b48/32.png) [@PGmicha](https://www.pg-forum.de/u/PGmicha)
#### Post date: [10. Januar 2023 um 12:25 UTC](https://www.pg-forum.de/t/row-number-liefert-mehrfach-1/12658/1 "2023-01-10T12:25:37Z")

</div>

Hallo,  
ich habe eine Tabelle mit ~40.000 Datensätzen und erhalte für [ROW\_NUMBER ( )](https://www.postgresqltutorial.com/postgresql-window-function/postgresql-row_number/) für zahlreiche Zeilen die “1”:

```auto
SELECT "ID-Lit", "Autor1", "Autor2", "Autor3", "Titel1", "Titel2", "Titel3", 
ROW_NUMBER ( ) OVER ( ORDER BY "Autor1" ASC, "Autor2" ASC, "Autor3" ASC, "Titel1" ASC, "Titel2" ASC, "Titel3" ASC, "ID-Lit" ASC ) AS "^RowNr"
FROM "intHes"."T LITDOK Daten";

```

Für die entsprechenden Zeilen haben sowohl die Autor\* als auch die Titel\*-Felder unterschiedliche Inhalte. Testweise habe ich auch den Primärschlüssel “ID-Lit” aufgenommen.  
Wo ist mein Fehler?

---

<div class="post-metadata">

### Author: ![akretschmer](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/a/a6a055/32.png) [@akretschmer](https://www.pg-forum.de/u/akretschmer)
#### Post date: [10. Januar 2023 um 12:53 UTC](https://www.pg-forum.de/t/row-number-liefert-mehrfach-1/12658/2 "2023-01-10T12:53:14Z")

</div>

Du bist Dir sicher, kein PARTITION BY im over(…) zu haben?

---

<div class="post-metadata">

### Author: ![PGmicha](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/p/f05b48/32.png) [@PGmicha](https://www.pg-forum.de/u/PGmicha)
#### Post date: [10. Januar 2023 um 12:58 UTC](https://www.pg-forum.de/t/row-number-liefert-mehrfach-1/12658/3 "2023-01-10T12:58:39Z")

</div>

> [@akretschmer](#):
>
> Du bist Dir sicher, kein PARTITION BY im over(…) zu haben

Ja, das ist eine Kopie meiner aktuellen Query. Wenn nötig, wie muss ich PARTITION ergänzen?

---

<div class="post-metadata">

### Author: ![akretschmer](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/a/a6a055/32.png) [@akretschmer](https://www.pg-forum.de/u/akretschmer)
#### Post date: [10. Januar 2023 um 13:09 UTC](https://www.pg-forum.de/t/row-number-liefert-mehrfach-1/12658/4 "2023-01-10T13:09:44Z")

</div>

Nein, PARTITION BY wäre eine Erklärung für mehrfach 1:

```auto
postgres=# select * from demo;
 a | b | c 
---+---+---
 1 | 2 | 3
 1 | 2 | 3
 1 | 2 | 3
 4 | 5 | 6
(4 rows)

postgres=# select *, row_number() over (order by a) from demo;
 a | b | c | row_number 
---+---+---+------------
 1 | 2 | 3 | 1
 1 | 2 | 3 | 2
 1 | 2 | 3 | 3
 4 | 5 | 6 | 4
(4 rows)

postgres=# select *, row_number() over (partition by a order by a) from demo;
 a | b | c | row_number 
---+---+---+------------
 1 | 2 | 3 | 1
 1 | 2 | 3 | 2
 1 | 2 | 3 | 3
 4 | 5 | 6 | 1
(4 rows)

postgres=#
```

---

<div class="post-metadata">

### Author: ![PGmicha](https://www.pg-forum.de/letter_avatar_proxy/v4/letter/p/f05b48/32.png) [@PGmicha](https://www.pg-forum.de/u/PGmicha)
#### Post date: [12. Januar 2023 um 10:33 UTC](https://www.pg-forum.de/t/row-number-liefert-mehrfach-1/12658/5 "2023-01-12T10:33:54Z")

</div>

Danke @akretschmer. Das Problem ist nicht PostgreSQL, dort und in dBeaver liefert die Query richtige Werte. Erst bei der Nutzung der LibreOffice-Base - Oberfläche kommt es zu der Erscheinung. Ich habe es nun anders gelöst.

---

<div class="post-metadata">

### Author: ![system](https://www.pg-forum.de/uploads/default/original/1X/dc97a981dd26692d5fb52e8b8fc7c090d7b9559a.png) [@system](https://www.pg-forum.de/u/system)
#### Post date: [13. März 2023 um 10:34 UTC](https://www.pg-forum.de/t/row-number-liefert-mehrfach-1/12658/6 "2023-03-13T10:34:37Z")

</div>

Dieses Thema wurde automatisch 60 Tage nach der letzten Antwort geschlossen. Es sind keine neuen Antworten mehr erlaubt.
