una query ha iniziato quest’anno a fare le bizze.
- Codice: Seleziona tutto
SELECT QRY_PER_CERTIFICATO_PRESENZE_2.IDSTUD, QRY_PER_CERTIFICATO_PRESENZE_2.ANNO, QRY_PER_CERTIFICATO_PRESENZE_2.MESE, QRY_PER_CERTIFICATO_PRESENZE_2.Nogog, QRY_PER_CERTIFICATO_PRESENZE_2.data, [b]Min[/b](QRY_PER_CERTIFICATO_PRESENZE_2.[inizio mattina]) AS [inizio mattina], [b]Max[/b](QRY_PER_CERTIFICATO_PRESENZE_2.[FINE mattina]) AS [MaxDiFINE mattina], [b]Min[/b](QRY_PER_CERTIFICATO_PRESENZE_2.[inizio pomeeriggio]) AS [inizio pomeeriggio], [b]Max[/b](QRY_PER_CERTIFICATO_PRESENZE_2.[FINE pomeriggio]) AS [FINE pomeriggio]
FROM QRY_PER_CERTIFICATO_PRESENZE_2
GROUP BY QRY_PER_CERTIFICATO_PRESENZE_2.IDSTUD, QRY_PER_CERTIFICATO_PRESENZE_2.ANNO, QRY_PER_CERTIFICATO_PRESENZE_2.MESE, QRY_PER_CERTIFICATO_PRESENZE_2.Nogog, QRY_PER_CERTIFICATO_PRESENZE_2.data
HAVING (((QRY_PER_CERTIFICATO_PRESENZE_2.data)=#1/28/2014#))
ORDER BY QRY_PER_CERTIFICATO_PRESENZE_2.IDSTUD, QRY_PER_CERTIFICATO_PRESENZE_2.data;
(nell'esempio ho messo un giorno nel campo data per ridurre il lavoro e vedere una singola giornata)
Ora il problema è che ogni studente ha diversi "inizi" e diverse “fini” (chi entra alle 8,30 chi entra alle 9 chi alle 10 chi esce alle 16 chi alle 18.
Ogni record è composto da identificativo studente identificativo lezione con un suo inizio ed una sua fine e lo stato di assente/presente.
Ogni giornata per uno studente è composto quindi da n record.
Il certificato deve beccare la prima entrata e l'ultima uscita.
Questo riusciva ad ottenerlo sino lo scorso anno con questa query
A seguito del cambio di versione ho pulito il db togliendo vecchie query e vecchi report e macro e ho tolto query ridondanti.
Ora la query è quella che vi ho indicato.
Ho provato a sostituire min con primo e max con ultimo ma ottengo risultati sempre non completi (errore soprattutto con i campi inizio)
Chi riesce a darmi una mano?