Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [sql] Concatenare i risultati di una query

    Ciao a tutti

    Ho queste 2 tabelle
    Tabella1
    --------
    ID_tab1
    CampoTb1

    Tabella2
    --------
    ID_tab2
    ID_tab1
    CampoTb2

    ora vorrei estrarre dalla tabella 1 tutti i campi e per questi vedere in una seconda colonna tutti i campi della tabella2 collegati alla tabella1 separati da virgola
    non so come concatenare i risultati di una query
    cioè:

    Estrazione
    codice:
    ------------------------------------------------------
    |CampoTb1| CampiDiTab2                               |
    ------------------------------------------------------
    |Valore1 | ValoreTb2_1, ValoreTb2_2, ValoreTb2_3, ...|
    |Valore2 | ValoreTb2_4, ValoreTb2_5,...              |
    |Valore3 | ValoreTb2_6, ValoreTb2_7, ValoreTb2_8, ...|
    |Valore1 | ValoreTb2_9, ...                          |
    ------------------------------------------------------
    E' possibile farlo in una sola query?

    Avevo provato con
    codice:
     SELECT 
          CampoTb1, 
          (Select
              CampoTb2
           From
              Tabella2
           where
              Tabella2.ID_Tab1 = Tabella1.ID_Tab1) as CampiTb2
    FROM
          Tabella1
    Ovviamente mi dà errore.

  2. #2
    Utente di HTML.it L'avatar di Mychy
    Registrato dal
    Oct 2000
    Messaggi
    794
    Select Tabella1.*,Tabella2.* from Tabella1 inner join Tabella2 on Tabella1.ID_tab1=Tabella2.ID_tab2 where Tabella1.nomecampo=criterio_di_ricerca

  3. #3
    Non esattamente in questo modo (che per altro già conoscevo) si ottine:

    codice:
    -------------------------
    |CampoTb1 | CampiDiTab2 |
    -------------------------
    |Valore1  | ValoreTb2_1 |
    |Valore1  | ValoreTb2_2 |
    |Valore1  | ValoreTb2_3 |
    
    |Valore2  | ValoreTb2_4 |
    |Valore2  | ValoreTb2_5 |
    
    |Valore3  | ValoreTb2_6 |
    |Valore3  | ValoreTb2_7 |
    |Valore3  | ValoreTb2_8 |
    
    |Valore4  | ValoreTb2_9 |
    -------------------------
    Quello che invece vorrei ottenere io è un pò più diverso...
    codice:
    ------------------------------------------------------
    |CampoTb1| CampiDiTab2                               |
    ------------------------------------------------------
    |Valore1 | ValoreTb2_1, ValoreTb2_2, ValoreTb2_3, ...|
    |Valore2 | ValoreTb2_4, ValoreTb2_5,...              |
    |Valore3 | ValoreTb2_6, ValoreTb2_7, ValoreTb2_8, ...|
    |Valore4 | ValoreTb2_9, ...                          |
    ------------------------------------------------------

  4. #4
    Utente di HTML.it L'avatar di vonkranz
    Registrato dal
    Sep 2001
    Messaggi
    1,387
    Non si puo' fare una cosa del genere.
    L'unica e' ottenere un recordset con la query di Mychy e poi lavorare i dati manualmente, magari visualizzandoli in una griglia.
    ...and I miss you...like the deserts miss the rain...

  5. #5
    Io ricordavo l'esistenza di tabelle PIVOT :master: ... ma purtroppo non ho trovato niente di utile in rete sull'argomento.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.