Tabella di riepilogo access

di il
16 risposte

Tabella di riepilogo access

Buongiorno

Ho bisogno di creare una tabella di riepilogo che prende solo l'ultimo record di altre tabelle.

Esempio Io ho tre tabelle A-B-C  con i seguenti campi data nome e anomalia 1 e anomalia 2 

devo creare una tabella di riepilogo che ha come campi “ anomalia1 e anomalia 2 della tabella A  ” - “anomalia1 e anomalia 2 della tabella 2” -"anomalia1 e anomalia2 della tabella C"  e in queste tabella di riepilogo devo visualizzare l'ultimo record di ogni tabella

saluti

Pier

16 Risposte

  • Re: Tabella di riepilogo access

    Perché hai tre tabelle con gli stessi campi?

  • Re: Tabella di riepilogo access

    TabellaA.last…. Non ti piace?

    Da sql

    Select top 1 tabellaA order by data desc

    Union

    …Top 1 …. TabellaB…..

    Union

    … Top1.…. TabellaC….

    Le varianti della sql le lascio a te. Anche i motivi che ti hanno portato alla valutazione di tre tabelle gemelle.

  • Re: Tabella di riepilogo access

    10/09/2024 - f1pier ha scritto:


    Buongiorno

    Ho bisogno di creare una tabella di riepilogo che prende solo l'ultimo record di altre tabelle.

    Esempio Io ho tre tabelle A-B-C  con i seguenti campi data nome e anomalia 1 e anomalia 2 

    devo creare una tabella di riepilogo che ha come campi “ anomalia1 e anomalia 2 della tabella A  ” - “anomalia1 e anomalia 2 della tabella 2” -"anomalia1 e anomalia2 della tabella C"  e in queste tabella di riepilogo devo visualizzare l'ultimo record di ogni tabella

    saluti

    Pier

    Mi sembra già molto strano avere 3 Tabelle “Simili o Uguali”… addirittura ne vorresti una Quarta, anch'essa uguale, per riassumere l'ultima…?
    A prescindere penso che se non ci illustri la struttura, la prima cosa che viene in mente dirti è che potrebbe esserci un possibile errore di ingegneria del DB… quindi prima di fare qualsiasi proposta è meglio chiarire.

  • Re: Tabella di riepilogo access

    10/09/2024 - @Alex ha scritto:


    10/09/2024 - f1pier ha scritto:


    Buongiorno

    Ho bisogno di creare una tabella di riepilogo che prende solo l'ultimo record di altre tabelle.

    Esempio Io ho tre tabelle A-B-C  con i seguenti campi data nome e anomalia 1 e anomalia 2 

    devo creare una tabella di riepilogo che ha come campi “ anomalia1 e anomalia 2 della tabella A  ” - “anomalia1 e anomalia 2 della tabella 2” -"anomalia1 e anomalia2 della tabella C"  e in queste tabella di riepilogo devo visualizzare l'ultimo record di ogni tabella

    saluti

    Pier

    Mi sembra già molto strano avere 3 Tabelle “Simili o Uguali”… addirittura ne vorresti una anche per riassumere l'ultima…?
    A prescindere penso che se non ci illustri la struttura, la prima cosa che viene in mente dirti è che potrebbe esserci un possibile errore di ingegneria del DB… quindi prima di fare qualsiasi proposta è meglio chiarire.

    Le tre tabelle si rifiriscono a tre impianti diversi che possono avere anomalie diverse o uguali. Ogni tabella ha il suo storico mentre in quella di riepilogo mi serve avere solo l'ultimo record di ognuna. Preciso che le tabelle sono in realta 22 e contengono più campi come data nome e altro, solo che a me serve avere una tabella con solo il riepilogo delle ultime anomalie riscontrate

    grazie per l'aiuto

  • Re: Tabella di riepilogo access

    10/09/2024 - f1pier ha scritto:


    Le tre tabelle si rifiriscono a tre impianti diversi che possono avere anomalie diverse o uguali.

    …Preciso che le tabelle sono in realta 22 e contengono più campi come data nome e altro…

    In Access devi rispettare le regole di NORMALIZZAZIONE. Hai un (evidente) problema alla base nella progettazione delle tabelle. È ERRATO avere tre (anzi molte) tabelle con CAMPI UGUALI-SIMILI.

  • Re: Tabella di riepilogo access

    Idimpianto, idanomalia, data, animalia, inviato(si/no)

    Segni l'errore e invii un xml

    In risposta mandi l'xml per impostare a si il campo inviato.

    A parte l'ottismo di avere al massimo 2 anomalia, è sempre meglio verticalizzare i dati.

    Per come stai gestendo, se hai 3 anomalie ti ritrovi così 

    Id   data.  Anomalia1.  Anomalia2

    1.  Xy.        Errore1.       Errore2

    2.  Xy.        ErroreB

    Se peschi l'ultimo record ti perdi il penultimo… se non sovrascrive.

    Poi fai come credi.

    In più, se fai un'altra installazione duplichi la tabella e riscrivi la procedura?

  • Re: Tabella di riepilogo access

    A mio avviso stai applicando la concezione di un foglio dati, tipo excel, a un database.

  • Re: Tabella di riepilogo access

    10/09/2024 - OsvaldoLaviosa ha scritto:


    10/09/2024 - f1pier ha scritto:


    Le tre tabelle si rifiriscono a tre impianti diversi che possono avere anomalie diverse o uguali.

    …Preciso che le tabelle sono in realta 22 e contengono più campi come data nome e altro…

    In Access devi rispettare le regole di NORMALIZZAZIONE. Hai un (evidente) problema alla base nella progettazione delle tabelle. È ERRATO avere tre (anzi molte) tabelle con CAMPI UGUALI-SIMILI.

    Ogni tabella fa capo a un impianto diverso, il problema che anziche andare a vedere tabella per tabella le varie anomalie avevo bisogno di una che mi evedenziava per ogni impianto l'ultima anomalia riscontrata. Magari domani vi faccio un sreenschot di come sono le tabelle

  • Re: Tabella di riepilogo access

    Anche se sono tabelle che fanno capo a impianti diversi , se i dati sono gli stessi, ne devi fare una sola aggiungendo l'id dell'impianto. Con una query semplice in questo modo ottieni quello che vuoi. 

  • Re: Tabella di riepilogo access

    10/09/2024 - oregon ha scritto:


    Anche se sono tabelle che fanno capo a impianti diversi , se i dati sono gli stessi, ne devi fare una sola aggiungendone id dell'impianto. Con una query semplice in questo modo ottieni quello che vuoi. 

    Puoi gentilmente fare un esempio veloce con due tabelle

    grazie

  • Re: Tabella di riepilogo access

    [TblImpianti]				[tblEventi]
    IdImpianto (PK 1)<-------->	IdImpiantop (Chiave Esterna lato M)
    							IdEvento (PK)
    							Data
    							....				

    Con una banale SELECT

    SELECT TOP 1 * FROM tblEventi
    WHERE IdImpianto=TuoImpianto
    ORDER BY Data DESC
  • Re: Tabella di riepilogo access

    10/09/2024 - f1pier ha scritto:


    10/09/2024 - oregon ha scritto:


    Anche se sono tabelle che fanno capo a impianti diversi , se i dati sono gli stessi, ne devi fare una sola aggiungendone id dell'impianto. Con una query semplice in questo modo ottieni quello che vuoi. 

    Puoi gentilmente fare un esempio veloce con due tabelle

    grazie

    Non due tabelle. Ti ho detto una sola. Leggi la risposta di Alex qui sopra

  • Re: Tabella di riepilogo access

    10/09/2024 - @Alex ha scritto:


    [TblImpianti]				[tblEventi]
    IdImpianto (PK 1)<-------->	IdImpiantop (Chiave Esterna lato M)
    							IdEvento (PK)
    							Data
    							....				

    Con una banale SELECT

    SELECT TOP 1 * FROM tblEventi
    WHERE IdImpianto=TuoImpianto
    ORDER BY Data DESC

    Così non va…

    Deve creare un campo da spuntare in caso di visione

    Top 1 esclude eventuali successivi invii di anomalie e nel caso non ci sono anomalie visualizza sempre che c'è una anomalia (magari già corretta).

    Basta where letta=false ed ha l'elenco delle ultime anomalie non lette.

  • Re: Tabella di riepilogo access

    Scusa sihsandro… ma chi ti ha detto la questione del “letto”? Non mi pare ci sia tra le richieste dell'op

    ORDER DESC e TOP 1 permette di vedere l'ultima anomalia come richiesto,non le vuole tutte    

Devi accedere o registrarti per scrivere nel forum
16 risposte