Non conosco assolutamente Postgre
Ma nel linguaggio SQL ci sono poche differenze,
Ti propongo una soluzione con Access poi la trasformi te in postgre
__________________________________________________ ___________________
Le tabelle sono queste:
___ Re
ReId ____ Numerico ___ Key ___ Autoincrementale
Regio ___ Testo
ReOrd ___ Numerico
___ Pr
PrId ____ Numerico ___ Key ___ Autoincrementale
Prov ____ Testo
PrRe ____ Numerico
PrOrd ___ Numerico
__________________________________________________ _______________
In particolare fra "ReId" e "PrRe" esiste una relazione
uno a molti dove
ReId è sul lato uno
PrRe e sul lato molti ( KeyEsterna )
ReOrd e il campo dove metti un numero di ordine
arbitrario alla regione
PrOrd e il campo dove metti un numero di ordine
arbitrario alla Provincia ( ma resterà sempre sotto la sua regione )
la query è questa:
codice:
SELECT
Q5.C1
FROM
(
SELECT
[Regio] & ":" AS C1,
Re.ReOrd AS C2,
"" AS C3
FROM Re
UNION ALL
SELECT
"- " & [Prov] AS C1,
Re.ReOrd AS C2,
Pr.PrOrd AS C3
FROM Re
INNER JOIN Pr ON Re.ReId = Pr.PrRe
) AS Q5
ORDER BY Q5.C2, Q5.C3
;
Detta in italiano è uma query di unione fra
le regioni e le province dove:
__ Al 1° campo ( C1 ) c'è la regione e/o la provincia
__ Al 2° campo ( C2 ) c'è il numero di oedine della regione
( la provincia eredita il numero della sua regione
__ Al 3° campo ( C3 ) c'è il numero di ordine della provincia
( la regione resta con questo campo vuoto )
Il tutto viene poi ordinato per il 2° e 3° campo
Saluti