Visualizzazione dei risultati da 1 a 3 su 3

Discussione: aiuto query SQL

  1. #1

    aiuto query SQL

    ragazzi aiuto
    allora ho una tabella access (SQL)
    con ID, AGENZIA, NOME, QUALIFICA, SPORTELLO,SITUAZIONE

    Sportello è un campo SI/NO o True/False se è SI significa che la persona lavora allo sportello....se è NO è in Ufficio

    ES.
    codice:
    ID  AGENZIA  NOME    QUALIFICA     SPORTELLO   SITUAZIONE
    1     6455     Pippo      Op_Sport       SI                 presente
    2     1564     Baudo     Op_Sport       SI                 malattia
    3     1564     Franco    Retail            NO                presente
    4     1564     Gigi         Op_Sport      SI                 banca ore
    5     6300     Pluto       Fungibile       SI                 presente
    6     3500     Paperino  Corporate      NO                malattia  
    7     3500     Gianni      Sostituto      SI                 malattia
    io devo fare una select facendo una distinct per Agenzia che mi estrae

    1)totale (COUNT)PERSONE per agenzia
    1)totale count(ASSENTI) (non presenti) x agenzia
    2)totale count(OPERATORI SPORTELLO) (quindi che hanno SPORTELLO come SI)x agenzia
    3)totale count(OPERATORI SPORTELLO Assenti (non presenti)) x agenzia


    è possibile farlo in una sola select con 5 colonne?

    AGENZIA ,TOTALE_ORGANICO,TOTALE_ASSENTI,TOTALE_OPERATORI, TOTALE_ASSENTI_OPERATORI.

    MI AIUTATE???
    grazie mille

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    codice:
    select agenzia, sum(c1) as totale_organico, sum(c2) as totale_assenti, sum(c3) as totale_operatori, sum(c4) as totale_assenti_operatori from
    (
    select agenzia, count(*) as c1, 0 as c2, 0 as c3, 0 as c4 from tabella group by agenzia
    union
    select agenzia, 0 as c1, count(*) as c2, 0 as c3, 0 as c4 from tabella where situazione<>'presente' group by agenzia
    union
    select agenzia, 0 as c1, 0 as c2, count(*) as c3, 0 as c4 from tabella where sportello='SI' group by agenzia
    union
    select agenzia, 0 as c1, 0 as c2, 0 as c3, count(*) as c4 from tabella where situazione<>'presente' and  sportello='SI' group by agenzia
    )
    group by agenzia
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    grazie mille
    ma se volessi inserire altri 4 campi (Data,Ora,Zona,Descrizione)appartenenti ad un altra tabella(chiamata Organici) e collegata con l'ID a questa?

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.