FindFirst parametro

di il
6 risposte

FindFirst parametro

Salve, ho due tabelle TAnagrafica e TDocumenti ho la necessità di trovare per ogni record della tabella TAnagrafica il relativo primo record della tabella TDocumenti, come posso procedere tramite query senza dover scorrere con dei cicli le due tabelle e ridurre i tempi del risultato?

6 Risposte

  • Re: FindFirst parametro

    Dovresti dare maggiori dettagli ssu Campi e relazioni, non credi?

  • Re: FindFirst parametro

    30/11/2022 - oregon ha scritto:


    Dovresti dare maggiori dettagli ssu Campi e relazioni, non credi?

    Salve Oregon, i campi coinvolti sono:

    TAnagrafica: IDAnagrafica

    TDocumenti: IDDocumento, IDAnagrafica, DataDocumento

    devo trovare per ogni record TAnagrafica.IDAnagrafica il primo TDocumenti.IDDocumento 

  • Re: FindFirst parametro

    Che intendi con “il primo”?

  • Re: FindFirst parametro

    SELECT TAnagrafica.IDAnagrafica, PrimiDocumenti.PrimoDocumento
    FROM (SELECT TDocumenti.IDAnagrafica, Min(TDocumenti.DataDocumento) AS PrimoDocumento
    FROM TDocumenti
    GROUP BY TDocumenti.IDAnagrafica) AS PrimiDocumenti 
    INNER JOIN TAnagrafica ON PrimiDocumenti.IDAnagrafica= TAnagrafica.IDAnagrafica;
  • Re: FindFirst parametro

    30/11/2022 - Stifone ha scritto:


    SELECT TAnagrafica.IDAnagrafica, PrimiDocumenti.PrimoDocumento
    FROM (SELECT TDocumenti.IDAnagrafica, Min(TDocumenti.DataDocumento) AS PrimoDocumento
    FROM TDocumenti
    GROUP BY TDocumenti.IDAnagrafica) AS PrimiDocumenti 
    INNER JOIN TAnagrafica ON PrimiDocumenti.IDAnagrafica= TAnagrafica.IDAnagrafica;

    Con questo codice Non è che hai risposto alle domande .

    Che sognifica primi documenti?

    in base a quale criterio sono i primi?

    Come si legge dal codice, i più vecchi per data?

    I dati con gli id più piccoli?

    I primi prima dei secondi?

    Nel titolo hai messo find first parametro.

    Dove lo usi find first?

  • Re: FindFirst parametro

    30/11/2022 - Stifone ha scritto:


    SELECT TAnagrafica.IDAnagrafica, PrimiDocumenti.PrimoDocumento
    FROM (SELECT TDocumenti.IDAnagrafica, Min(TDocumenti.DataDocumento) AS PrimoDocumento
    FROM TDocumenti
    GROUP BY TDocumenti.IDAnagrafica) AS PrimiDocumenti 
    INNER JOIN TAnagrafica ON PrimiDocumenti.IDAnagrafica= TAnagrafica.IDAnagrafica;

    Grazie mille funziona perfettamente!

Devi accedere o registrarti per scrivere nel forum
6 risposte