Pagina 3 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 21 a 30 su 36
  1. #21
    Utente di HTML.it
    Registrato dal
    May 2021
    Messaggi
    25
    Quote Originariamente inviata da optime Visualizza il messaggio
    certo, ti basta la tabella dei partecipanti, con una COUNT() GROUP BY(idviaggio), mettendola in ordine discendente e prendendo la prima con LIMIT visto che usi mysql

    Non è che saresti così gentile da scrivermela?

  2. #22
    Quote Originariamente inviata da Eustik70 Visualizza il messaggio
    Non è che saresti così gentile da scrivermela?
    Ti ho già scritto le componenti fondamentali, se uno sa un minimo di SQL è più che sufficiente. Prova a scrivere qualcosa di tuo e se non funziona posta la query e la si guarda assieme.

    Inutile ricordare che questo è un forum di discussione, non un juke-box dove metti la monetina (e manco quella) ed escono le query...

  3. #23
    Utente di HTML.it
    Registrato dal
    May 2021
    Messaggi
    25
    SELECT Id_viaggio, COUNT(*) as NumeroPartecipanti
    FROM partecipanti
    GROUP BY Id_viaggio
    ORDER BY NumeroPartecipanti DESC
    LIMIT 1

    OK ci sono riuscito

  4. #24

  5. #25
    Utente di HTML.it
    Registrato dal
    May 2021
    Messaggi
    25
    Quote Originariamente inviata da optime Visualizza il messaggio
    Ti ho già scritto le componenti fondamentali, se uno sa un minimo di SQL è più che sufficiente. Prova a scrivere qualcosa di tuo e se non funziona posta la query e la si guarda assieme.

    Inutile ricordare che questo è un forum di discussione, non un juke-box dove metti la monetina (e manco quella) ed escono le query...
    Non volevo assolutamente offendere nessuno e anzi siete stati fantastici.

  6. #26
    Utente di HTML.it
    Registrato dal
    May 2021
    Messaggi
    25
    Mi servirebbe però una mano ad unire due query che ho fatto (fatto per modo di dire ... ) una che calcola l'età dei soggetti in tabella anagrafica partendo da data di nascita in formato date.

    Poi ho una join multipla che mi trova le anagrafiche che partecipano ad un viaggio.

    Dovrei unirle per trovare l'età media dei partecipanti.

  7. #27
    la media la calcoli con AVG()
    l'età la trovi sottraendo la data di nascita da TODAY()

  8. #28
    Utente di HTML.it
    Registrato dal
    May 2021
    Messaggi
    25
    SELECT viaggi.*, partecipanti.*, anagrafiche.*
    FROM viaggi
    INNER JOIN partecipanti
    ON viaggi.ID_viaggio = partecipanti.Id_viaggio
    INNER JOIN anagrafiche
    ON anagrafiche.ID_anagrafica = partecipanti.Id_anagrafica
    WHERE viaggi.ID_viaggio = 1


    Questa è la query delle join che mi trova le anagrafiche dei partecipanti al viaggio. Ora vorrei calcolare le età medie dei partecipanti usando questa query

    select floor (mediaeta) as `Età Media` from (select avg (eta) as mediaeta from (SELECT TIMESTAMPDIFF(YEAR, anagrafiche.`Data di Nascita`, CURDATE( )) AS eta FROM anagrafiche ORDER BY eta DESC) as eta) as etamedia

  9. #29
    aridajela co' 'sti SELECT *, che manco ti servono! metti le colonne giuste, SOLO quelle che servono allo scopo

    ad esempio: che ci fai con i dati della tabella viaggi? o quelli della tabella partecipanti? ti servono SOLO nella JOIN, non nella SELECT (i viaggi manco nella JOIN a dire il vero)

    nella SELECT metti solo i dati delle anagrafiche, nel caso specifico la data di nascita, con cui farai i calcoli (che già sai come fare)

  10. #30
    anzi, parti dalla seconda query, e aggiungi in JOIN la tabella partecipanti, che ti serve per selezionare il viaggio

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