Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26
  1. #1

    Posso "summare" senza averne dipendenza?

    Perdonate il titolo un pò criptico ... ma dati i miei limiti, cerco di spiegarmi meglio con un esempio della mia problematica.

    Innanzitutto sto "sviluppando" un piccolo sistema di tracking click e lettura per la mia newsletter. Il problema "maggiore" è che nella stessa tabella segno sia quante letture sono state effettuate, e sia i click nelle varie zone della newsletter fatti dai miei iscritti ... questo non mi consente di prendere dei dati separatamente ma con una unica query.

    Come dicevo, mi spiego con un esempio:

    # NOME NEWSLETTER | CODICEINVIO | AREA | URL | CLICK

    Pippo | 1166438383 (formato timestamp) | letture | # | 5000
    Pippo | 1166438383 | centrale | www.html.it | 354
    Pippo | 1166438383 | destro | www.miosito.it | 180

    e cosi via.

    Ora vorrei farmi un report aggregato in cui riuscire a visualizzare, con un'unica query, sia le letture della newsletter PIPPO con il codice univoco, e sia i click totali di quella newsletter, ma senza le letture.

    Nel mio caso vorrei avere un risultato del tipo:

    Codice Newsletter Pippo : 1166438383 (che io trasformo in data)
    Letture: 5000 / Click Totali: 354+180

    Codice Newsletter Pippo : 1199124172 (che io trasformo in data)
    Letture: 5124 / Click Totali: 254+87+45+12


    ecc ecc ...

    Posso farlo con un'unica query non potendo utilizzare le subquery ??

    Grazie mille per le delucidazioni
    Perchè uso Maxthon? | Mi piace questa chat

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    ciao. le union le puoi usare?

  3. #3
    Originariamente inviato da nicola75ss
    ciao. le union le puoi usare?
    non lo so ... ho la 4.0.24

    Altrimenti pensi che l'unica sia un ciclo while?
    Perchè uso Maxthon? | Mi piace questa chat

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Non ricordo mai se le union sono disponibili dalla 4.0 o dalla 4.1.

    Vedi se così risolvi

    codice:
    select codiceinvio,sum(click) as totale,
    case
    when area = 'letture' THEN "letture"
    else "non_letture"
    end as categoria
    from tabella
    group by codiceinvio,categoria

  5. #5
    Intanto grazie

    Allora, non dà errori, quindi le accetta .... però la query non fa quello che deve fare ... ovvero dà la somma totale di tutto, non scorporando quindi il totale delle letture con la somma dei click normali (no letture)

    Questo un risultato tipico:

    CODEINVIO | TOTALE | CATEGORIA
    1166209412 | 8325 | non_letture
    1166438383 | 2209 | non_letture

    Nel secondo caso sarebbe dovuto essere invece

    1166438383 | 1704 | 533

    1704 sono le letture
    533 è la somma dei click di tutte le aree che non sono "letture"


    Grazie per la mano
    Perchè uso Maxthon? | Mi piace questa chat

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Dipenderà dal fatto che usi un timestamp. Per raggruppare per giorno fai così

    codice:
    select from_unixtime(codiceinvio,"%d-%m-%Y")as giorno,sum(click) as totale,
    case
    when area = 'letture' then "letture"
    else "non_letture"
    end as categoria
    from tabella
    group by giorno,categoria

  7. #7
    Niente, stesso risultato di sopra
    Perchè uso Maxthon? | Mi piace questa chat

  8. #8
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Originariamente inviato da Bukowski
    Niente, stesso risultato di sopra
    Mi sembra strano che non funzioni. Le somme devono essere fatte per giorno o come?

  9. #9
    Originariamente inviato da nicola75ss
    Mi sembra strano che non funzioni. Le somme devono essere fatte per giorno o come?
    si per giorno .. ovvero timestamp.

    forse non lavora correttamente con le union il mysql ?

    ;(
    Perchè uso Maxthon? | Mi piace questa chat

  10. #10
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Originariamente inviato da Bukowski
    si per giorno .. ovvero timestamp.

    forse non lavora correttamente con le union il mysql ?

    ;(
    La query che ti ho scritto non fa uso di union. Se sto sbagliando qualcosa non riesco proprio a vederlo l'errore.

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