PDA

Visualizza la versione completa : [ACCESS] SQL: comprimere piu righe in una soltanto


afrappe
24-11-2005, 08:42
ho una struttura del db access come segue(3 tabelle)

tabella ordini (idordine,descrizione)
tabella articoli (idArticolo,descrizione, prezzo,..,..,.)
tabella composizione ordini (fkOrdine,fkArticolo,..,..,..)

la tabella composizione ordini mi serve per associare piu articoli ad un ordine
ammettiamo che ho 2 ordini composti ciascuno da 5 articoli

mettendo in join le tabelle ottengo un numero di record pari a 2x5= 10 (giustamente come mi aspettavo che fosse)
ESEMPIO
[idOrdine] [Articoli]
ordine1 descrizioneArt1
ordine1 descrizioneArt2
ordine1 descrizioneArt3
ordine1 .........
ordine1 ......
ordine1 ...
ordine2 descrizioneArt6
ordine2 descrizioneArt7
ordine2 ..........
ordine2 ......
ordine2 ....


io però vorrei ottenere due soli record(quelli dell'ordine) nella quale sono presenti i campi:
"idOrdine" e un campo contenente sotto forma di stringa tutti gli articoli di quell'ordine separati
da un carattere(un trattino va benissimo)

ESEMPIO
[idOrdine] [Articoli]
ordine1 descrizioneArt1 - descrizioneArt2 - descrizioneArt3 - ......
ordine2 descrizioneArt6 - descrizioneArt7 - ............... - ......

come posso fare??? grazie a tutti

afrappe
29-11-2005, 09:36
rispondo solo per rimettere in evidenza il messaggio, grazie

Shea
02-12-2005, 10:41
Non ho capito come vuoi mettere in relazione queste tabelle.
Se hai un ordine [ID_ordine] a questo devi collegare [ID_Articolo1]+[ID_Articolo2] e così via. In questo caso devi impostare un campo che associ gli [ID_ArticoloX] ad un [ID_ordine].

Spiega meglio cosa vuoi fare.

afrappe
02-12-2005, 11:20
Originariamente inviato da Shea
Non ho capito come vuoi mettere in relazione queste tabelle.
Se hai un ordine [ID_ordine] a questo devi collegare [ID_Articolo1]+[ID_Articolo2] e così via. In questo caso devi impostare un campo che associ gli [ID_ArticoloX] ad un [ID_ordine].

Spiega meglio cosa vuoi fare.

la tabella ordini e quella articoli nn sono relazionate direttamente ma passano per una tabella intermedia "composizione ordni" che mi consente di fare una relazione "n" a "n", mi spiego meglio: in questa tabella ci satanno tanti record quanti saranno gli articoli per ciascun ordine in modo che (per esempio per l'ordine "a" associo 3 articoli per l'ordine "b" ne associo 5) nella tabella "composizione ordini" avro un totale di 8 record di cui i primi tre saranno riferiti all'ordine "a"(1 record per ogni articolo, quindi tre record) e 5 record all'ordine "b" perche appunto ha 5 articoli, spero di essermi spiegato meglio

Loading