From: | Pierre Pönisch <pierre_poenisch(at)web(dot)de> |
---|---|
To: | "Pgsql-De-Allgemein" <pgsql-de-allgemein(at)postgresql(dot)org> |
Subject: | Umsetzung des relationalen Modells |
Date: | 2004-10-25 14:38:13 |
Message-ID: | MOEIIDFKELKEEPGHMEDECECOCLAA.pierre_poenisch@web.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-de-allgemein |
Hallo,
da ich mich gerade intensiver mit dem relationalen Modell auseinandersetze
habe ich folgende Fragen.
Nach dem Modell besteht jede Relation aus Tupeln. Jedes Tupel ist eine Menge
aus Werten. Da der Kopf einer Relation aus einer Menge von Attributen
besteht, gibt es keine Ordnung der Attribute. Wie man bei folgendem Test
sehen kann, setzt PostgreSQL dies nicht um.
Test:
test=# select * from table1;
attr1 | attr2 | attr3
-------+-------+-------
1 | 2 | test1
3 | 4 | test2
5 | 6 | test3
(3 rows)
test=# select * from table2;
attr3 | attr2 | attr1
-------+-------+-------
9 | 10 | test4
11 | 12 | test5
13 | 14 | test6
(3 rows)
test=# (select * from table1) union (select * from table2);
attr1 | attr2 | attr3
-------+-------+-------
1 | 2 | test1
3 | 4 | test2
5 | 6 | test3
9 | 10 | test4
11 | 12 | test5
13 | 14 | test6
(6 rows)
Man sieht, dass PostgreSQL nicht die Spalten nach dem Spalten(Attribut-)name
vereint, sondern nach der Reihenfolge in der die Attribute bei CREATE TABLE
angegeben wurden. Diese Implementierung entspricht nicht dem relationalen
Modell.
Frage: Ist dieses Verhalten beabsichtigt? Wenn ja: Warum?
Grüße,
Pierre Pönisch
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2004-10-25 15:16:45 | Re: Umsetzung des relationalen Modells |
Previous Message | Guido Stepken | 2004-10-14 08:23:36 | Re: Suchen und finden mit diakritika |