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

    SQL implementazione query

    Salve a tutti, ho da poco incominciato a studiare L'SQL, e non ho ancora chiari alcuni concetti. Ho 10 Query da creare, 7 su 10 fungono alla grande. Ma 3 di queste dieci non mi riescono, anche perchè non mi sono particolarmente chiare. Potreste darmi una mano ?

    Il database:
    Attore(CodiceAttore , Cognome, Nome, Nazionalità)
    Film(CodFilm, Titolo Regisa, Anno, Sceneggiatura, Genere, Produzione, Premi, Musica, Locandina)
    Interpretazione(CodAttore, CodFilm)
    Location(CodFilm, CodLoc, Citta, Provincia, Anno)

    Query:

    1) Per ciascun attore il numero di film italiani interpretati
    2) Elenco degli attori in ordine decrescente di interpretazione film
    3) Per ciascuna provincia numero dei film girati in ordine alfabetico di provincia.

    Sareste cosi gentili da darmi una mano ?

  2. #2
    visto che stai studiando, l'importante è capire. inizia a buttare giù la prima, che la sistemiamo assieme

  3. #3
    di quelle tre non ho capito praticamente che vuole chiedere.

    1) Per ciascun attore il numero di film italiani interpretati
    Che dovrei generare ? una lista di tutti gli attori con il numero di film italiani che ha fatto ?

    SELECT `test_prefixattori`.*
    FROM test_prefixattori, test_prefixinterpretazioni,
    WHERE (`test_prefixinterpretazioni`.`CodAttore` = `test_prefixattori`.`CodAttore` AND `test_prefixfilm`.`Produzione`="Italia")

    una cosa del genere ?

    il test_prefix è uscito dopo l'importazione del database. non fateci caso.

  4. #4
    devi comunque usare la GROUP BY

    ad esempio

    SELECT CodAttore, COUNT(CodFilm) FROM Interpretazione GROUP BY CodAttore

    raggruppa per CodAttore, contando quanti film ha fatto

    sistemala aggiungendo la JOIN, la WHERE, ecc

  5. #5
    l'istruzione join non l'ho ancora "studiata" ma mi hanno fatto sempre scrivere la clusola mettendo l'ugualgianza tra le chiavi primarie comunque ho abbozzato una cosa del genere ma c'è qualcosa che non và:

    SELECT COUNT(`test_prefixfilm`.`CodFilm`), `test_prefixattori`.`CodAttore` as NumeroFilm
    FROM test_prefixattori, test_prefixinterpretazioni, test_prefixfilm
    WHERE (`test_prefixinterpretazioni`.`CodAttore` = `test_prefixattori`.`CodAttore` AND `test_prefixfilm`.`Produzione`="Italia")
    GROUP BY `test_prefixattori`.`CodAttore`

    misa che devo fare un altro join per quanto riguarda la produzione...c'è qualche istruzione particolare ?

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.