Dubbio tra sum e count

di il
6 risposte

Dubbio tra sum e count

Salve ho un dubbio se usare il count o sum in questo esercizio di mysql

attori (codice attore , nome , anno nascita , nazionalità)
recita (codice attore , codice film)
film (codice film , titolo , anno produzione , nazionalità , regista , genere)
proiezioni (codice proiezione , codice film , codice sale , incasso , data proiezione)
sale (codice sala , posti , nome , città


numero totale di posti nelle sale di pisa

io faccio


select count(posti)
from sale
where città = "pisa"

solo che nella soluzione dell'esercizio al posto di count ho "sum" sbaglio io? grazie in anticipo

6 Risposte

  • Re: Dubbio tra sum e count

    Con la COUNT avrai il numero di record ... tu devi usare la SUM
  • Re: Dubbio tra sum e count

    Quindi è sbagliato perchè count lo uso per contare il numero di valori nella tabella , invece sum i valori veri e proprio delle tabelle giusto?
  • Re: Dubbio tra sum e count

    Ho un altro dubbio sul country :se per esempio devo contare tutti i valori in "film" ,per esempio ho questo esercizio legato sempre alla tabella di prima


    per ogni film di s. Spielberg, il titolo del film Il numero totale di proiezioni a Pisa e l' incasso totale


    Per calcolare tutte le proiezioni a Pisa farei


    Select count (*)
    From proiezioni

    Qua però sorge il mio dubbio nel from posso mettere anche "film" che riguarda il titolo ? Perché così il country proietterebbe non solo la conta di tutte le proiezioni ma il cartesiano tra proiezioni e film!é sbagliato il mio ragionamento??grazie in anticipo
  • Re: Dubbio tra sum e count

    Se intendi
    
    SELECT COUNT(*)
    FROM proiezioni film sale
    WHERE ...
    
    sì, puoi farlo perché prima fai la join, e quindi ti ritrovi con un'istanza contenente tutte le proiezioni di un certo film in una certa città, dopodiché conti quelle tuple.
  • Re: Dubbio tra sum e count

    Ok , quindi di fatto fa la conta delle istanze trovate col join , io probabilmente contavo solo le cose singolarmente invece di considerare che il count avrebbe preso in considerazione anche il where e di conseguenza il join.grazie!
  • Re: Dubbio tra sum e count

    Io comunque ho risolto così la Query

    select titolo , count (*) as tot proiezioni , sum (incasso ) as tot incasso
    From film , proiezioni, sale
    Where codicefilm. Proiezione = codicefilm. Film And codicesala. Sale = codicesala. Proiezioni
    And città="pisa" And regista ="spielberg"
    Group by titolo


    All ultimo stavo pensando di aggiungere codicefilm in select per metterlo in Group by però mi sembra inutile
Devi accedere o registrarti per scrivere nel forum
6 risposte