SQL totali

di il
9 risposte

SQL totali

Salve,

ho un file con 50 campi e di questi i primi 5 sono alfanumerici,  40 sono numerici  e gli ultimi 5 sono alfanumerici.

Per la somma dei campi numerici uso la seguente sintassi:

Select SUM(CAMPO01) AS CAMPO01_T, SUM(CAMPO02) AS CAMPO02_T, SUM(CAMPO03) AS CAMPO03_T,……..

c'é la possibilità, con altra sintassi, di sommare i campi numerici nei rispettivi alias evitando di scrivere l'istruzione SUM n volte (ovvero 40 volte) ?

Grazie

9 Risposte

  • Re: SQL totali

    Un file o una tabella di database?

    una tabella con 50 colonne e' un suicidio concettuale.

    Vuol dire volersi farsi TANTO male. 

    Il ‘cilicio’ o la flagellazione farebbero il solletico, al confronto.

    cosi' come e', no: DEVI fare i 40 SUM.

    invece di 40 colonne numeriche bastavano 2, una con un id (al posto della colonna) e l'altra con il valore, e facevi tutto con UNA SINGOLA SUM ed un GROUP BY.

  • Re: SQL totali

    29/09/2023 - Yanez ha scritto:


    Salve,

    ho un file con 50 campi e di questi i primi 5 sono alfanumerici,  40 sono numerici  e gli ultimi 5 sono alfanumerici.

    Per la somma dei campi numerici uso la seguente sintassi:

    Select SUM(CAMPO01) AS CAMPO01_T, SUM(CAMPO02) AS CAMPO02_T, SUM(CAMPO03) AS CAMPO03_T,……..

    c'é la possibilità, con altra sintassi, di sommare i campi numerici nei rispettivi alias evitando di scrivere l'istruzione SUM n volte (ovvero 40 volte) ?

    Grazie

    In realtà la scriveresti una sola volta, poi la richiami quante volte vuoi.

    Ma come ti è stato detto, di cosa parliamo? Excell? Perché fare la somma, in un db la fai tra i campi di un record o per il totale dei record per campo…. Azz… come spiegarlo?

    Campo1.  Campo2. … campoN

    1.                  1.                 1 

    2.                  1.                 3

    Puoi fare (A)

     somma campo1  + campo 2 + campoN e ottieni 

    Somma

    3

    6

    Oppure (B)

    somma campo1, somma campo2 somma campo3

    E ottieni

    Sommacampo1.  Sommacampo2.   Somma campoN

    3.                                    2.                           4

    Di cosa parliamo? A o B?

  • Re: SQL totali

    Parliamo di un file che ha n records memorizzati.

    Il file ha questi 50 campi (10 alfa e 40 numerici). E' stato creato cosi a suo tempo. Pace all'anima sua.

    Non mi spaventa fare 40 SUM per una determinata condizione del file (where su uno dei campi alfa). 

    Chiedevo solamente se esiste una scorciatoia per la totalizzazione di ciascun campo numerico in n campi di comodo.

    Grazie  

  • Re: SQL totali

    Che centra SQL Server?

    Importi il file in una tabella del DBMS?

    Come fai a fare una SELECT su un FILE? 

    Che cosa e' questo ‘file’? Un csv? Un  json/xml/excel/…?

    Quello che scrivi non ha senso!

  • Re: SQL totali

    Ops…. database

  • Re: SQL totali

    29/09/2023 - Yanez ha scritto:


    Non mi spaventa fare 40 SUM per una determinata condizione del file (where su uno dei campi alfa). 

    Metti un parametro su where…. E… fatto!

    Where alfa = variabile

    Setti la variabile e lanci la query.

    Se li vuoi tutti

    Where (alfa = variabile and variabile2=true)

    Se variabile è false vedi tutti se è true vedi i record in base ad alfa.

    40 sum non sono niente…

  • Re: SQL totali

    Salve,

    scusate la “lentezza”, ma io ancora NON ho capito… si parla di 1 tabella di database SQL Server o di cosa??

    grazie e salutoni romagnoli…
    – 
    Andrea

  • Re: SQL totali

    30/09/2023 - asql ha scritto:


    Salve,

    scusate la “lentezza”, ma io ancora NON ho capito… si parla di 1 tabella di database SQL Server o di cosa??

    grazie e salutoni romagnoli…
    – 
    Andrea

    Ha una tabella con, tra gli altri, 40 campi numerici e vuole sapere se sia possibile evitare di scrivere a mano la sfilza di 

    ….Sum(campo1), Sum(campo2)….

  • Re: SQL totali

    30/09/2023 - amorosik ha scritto:


    Ha una tabella con, tra gli altri, 40 campi numerici e vuole sapere se sia possibile evitare di scrivere a mano la sfilza di 

    ….Sum(campo1), Sum(campo2)….

    Ha scritto che…

    Non mi spaventa fare 40 SUM per una determinata condizione del file (where su uno dei campi alfa). 

    Chiedevo solamente se esiste una scorciatoia per la totalizzazione di ciascun campo numerico in n campi di comodo.

    Penso che vuole una query parametrica per uno dei campi alfanumerici.

    Al momento se ha 400 dati diversi per quel campo alfanumerico deve scrivere per 400 volte la query.

    Non sa che può parametrizzare la where o creare da codice l'sql da dare in pasto alla query…

Devi accedere o registrarti per scrivere nel forum
9 risposte