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

    [sql] organizzazione database per statistiche giornaliere

    Ciao a tutti, sono tre giorni che mi scervello su come organizzare un database per la generazione di statistiche sui dati.
    Vi spiego meglio il problema:

    ogni giorno io inserisco circa 100 (in crescita) nuovi record ognuno relativo ad una vendita. Queste vendite hanno numerosi campi da cui io devo estrarre delle statistiche per questioni di marketing.

    ho però bisogno dei totali giornalieri, mensili e annuali.

    Inoltre devo generare statistiche da vari punti di vista, ovvero dividerle per luogo di vendita, tipologia di compratore e tipologia di prodotto.

    Quindi capirete che sono un bel po di punti di vista dato che potrei per esempio aver bisogno delle vendite del dato mese (o del dato giorno) per quella particolare tipologia di prodotti ( o clienti).

    Quello che in effetti volevo evitare è di fare query per ogni cosa: in quanto dopo fai conto 6 mesi avrò una tabella delle vendite con 18.000 record e dovendo generare le statistiche relative a tutti i punti vendita divise per mesi dell'anno, mi ritrovo a fare (supponendo 10 punti vendita) 10*12 query su 18.000 record. E a me sembra oneroso.

    Voi cosa dite?

    fare un cernita delle query più importanti ed eseguite più spesso e falicitarle organizzando i dati ad esse relative in tabelle ad hoc?
    COn le viste si guadagna un minimo in termini di efficienza?
    limitare le funzionalità dell'applicazione?

  2. #2

  3. #3
    Se posti tutti i campi possiamo vedere di normalizzare un po' il DB e vedere se otteniamo dei miglioramenti.
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  4. #4
    in realtà il punto è che non riesco a rappresentare sul diagramma E-R l'estensione temporale dei concetti che mi interessano...quindi non so come potremmo normalizzare qualcosa che ancora non c'è

    cmq tornando al discorso sui campi non mi metto a scriverteli tutti cmq considera che quelli che mi interessano principalmente sono grosso modo:
    per un vendita
    - codice della vendita univoco
    - codice del cliente che ha effettuato
    - codice del prodotto
    - ricavo
    - data della vendita
    - codice del punto vendita

    quindi poi mi interesserebbero
    per tipologia di prodotto:
    - numero totale di vendite
    - ricavo totale
    - ricavo medio per cliente (in realtà è un campo derivato)

    e la stessa cosa mi pare, non sto entrando nel dettaglio, anche per punto vendita e tipologia di cliente

    in realtà sostanzialmente sono viste diverse degli stessi dati ma con le viste ci vado sotto in termini di efficienza, o no?

  5. #5
    No, se usi qualche escamotage (se applicabile al tuo caso). Vedi tu hai tutti questi dati e devi cercare di rimandarli e di condensarli per sprecare il minor numro possibile di risorse (del pc intendo ). Quindi, per esempio, per il n° totale di vendite potresti creare una tabella con un campo totvendite che incrementi di uno ogni volta che fai una vendita. Lo stesso fai per il ricavo (aggiungendo al numero estratto quello della vendita corrente). Ricavo medio per cliente non l'ho capito bene.
    Cmq in generale dovresti fare una cosa del genere. Magari se ci ragioni un po' su trovi tu il modo migliore di organizzare il tutto. Secondo me però devi comprimere i dati come ti ho detto.
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

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