Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di desper
    Registrato dal
    Jul 2004
    Messaggi
    70

    join sql con GROUP BY!!!!

    ciao a tutti,
    il mio problema è la seguente select SQL:
    codice:
    SELECT a.cod_tip_file, a.cod_subtip_file, a.id_file_fisico,
    b.des_file_fisico, b.des_object_type, b.des_local_file, 
    c.des_tip_file, d.des_subtip_file FROM file_logico a, file_fisico b, 
    tip_file c, subtip_file d WHERE a.cod_dit='000001' AND 
    a.cod_lingua='IT' AND a.cod_dit=b.cod_dit AND a.cod_dit=c.cod_dit AND 
    a.cod_dit=d.cod_dit AND a.cod_lingua=c.cod_lingua AND 
    a.cod_lingua=d.cod_lingua AND a.id_file_fisico=b.id_file_fisico AND 
    a.cod_tip_file=c.cod_tip_file AND a.cod_subtip_file=d.cod_subtip_file 
    AND c.cod_tip_file=d.cod_tip_file;
    fin qui tutto ok, la join estrae i dati che mi servono in modo
    corretto, ora però ho l'esigenza di raggrupparli per tipologia, ma quando aggiungo
    codice:
    GROUP BY cod_tip_file;
    mi da il seguente errore:
    Dynamic Page Generation Error: The column (cod_subtip_file) must be
    in the GROUP BY list.

    xchè?? dovè l'errore???
    ho visto anche su guide e manuali...
    ...a me sembra corretto!!!
    aiutatemi!!

    grazie
    buon anno a tutti

  2. #2
    Prova a leggere bene l'errore che ti viene mostrato, forse la soluzione la trovi in quel messaggio!

  3. #3
    servirebbe sapere anche come sono le tabelle la struttura

  4. #4
    il problema sta nel fatto che la group_list deve contenere tutti e non solo gli attributi della select_list quindi ti sta dicendo che nella group_list devi aggiungere anche cod_subtip_file poi quando aggiungerai questo attributo ti darà sicuramente un altro errore uguale am con un altro attributo della select_list fino a quando non li hai messi tutti.

    devi risolvere il problema in un altro modo perchè così penso che non lo risolvi
    www.matteosteri.it

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    423
    GROUP BY si usa con funzioni che restituiscono i risultati di operazioni con insiemi di dati. A te invece dovrebbe bastare un semplice ORDER BY, no ?

  6. #6
    Utente di HTML.it L'avatar di desper
    Registrato dal
    Jul 2004
    Messaggi
    70
    GROUP BY si usa con funzioni che restituiscono i
    risultati di operazioni con insiemi di dati. A te invece
    dovrebbe bastare un semplice ORDER BY, no ?
    si infatti credo propio che risolverò in questo modo, anche se
    in realtà la mia intenzione era quella di nn ripetere più volte
    lo stesso titolo per lo stesso gruppo di dati, credo che questo
    lo risolverò con un semplice controllo di uguaglianza!

    grazie a tutti


  7. #7
    lo puoi anche risolvere con select distinct


    bye bye

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 © 2019 vBulletin Solutions, Inc. All rights reserved.