Full Outer Join: timestamp non corrispondente, aggiunta di altre righeDevo abbinare 6 file con dati raccolti in date diverse da dispositivi diversi (tutti con risoluzione di 1 minuto nel 2021).
(Nota: ho bisogno di un file "unito" fisicamente per uno scopo diverso, quindi non eseguo l'unione virtuale)
Ho provato un join esterno completo (incluse le non corrispondenze da "tabella principale" e "con tabella"; non ho incluso "rilascia multipli" per nessuna delle tabelle.
Ma continuava ad aggiungere altre righe anche se c'era una corrispondenza. Quindi ho creato un sottoinsieme e l'ho allegato qui.
Ho creato un timestamp di minuti per il 2021 in "TS-2021.jmp" con 525.600 righe
Sto provando a far corrispondere i timestamp di "App ST-2021-Test.jmp" con 723 righe.
Il risultato del Full outer join è in TS+AppST-2021-Test,jmp. 526.306 righe
La mia interpretazione è che il file risultante dovrebbe avere 525.600 righe e che dovrei trovare dati popolati solo nelle righe in cui i timestamp corrispondono. Ma non è così.
Ha trovato 17 righe, ma ne ha aggiunte altre nonostante ci sia una corrispondenza. Non so perché. Ho provato alcune funzioni matematiche sul timestamp, ma non mi hanno dato una risposta soddisfacente. Non so cosa sta succedendo? Aiuto?
Fusione e pulizia dei datiRe: Full Outer Join - Timestamp non corrispondente - aggiunta di più righeNel Unisciti alla finestra di dialogo vedrai un'opzione per a Bandiera della partita.

Ciò aggiungerà una colonna alla tabella risultante che indica se la riga proviene dalla tabella principale, dalla tabella With o da entrambe.
Tutto ciò che proveniva solo dal With non aveva una corrispondenza in Main.
Re: Full Outer Join - Timestamp non corrispondente - aggiunta di più righeHo una Q di follow-up per lo stesso: mi sono unito a 2 tabelle (sottraendo i secondi dal timestamp) e dalla tabella dei risultati vedo che il conteggio delle righe è passato da 525.600 (che è l'impostazione predefinita per una risoluzione di 1 minuto per un anno) a 525.929 righe. Come trovo quali righe sono state aggiunte? Nel mio pensiero mi aspetto che la tabella dei risultati dovrebbe avere le 525.600 righe predefinite, qualunque cosa accada, poiché vedo che tutte le altre tabelle devono essere unite come sottoinsieme di questo timestamp.
Re: Full Outer Join - Timestamp non corrispondente - aggiunta di più righeDa questo puoi vedere che ci sono secondi diversi da 00 (prova a cambiare il formato dalle proprietà della colonna). Anche se li mostra come minuti, i secondi sono in realtà lì poiché i valori sono in datetime (valore numerico) che viene "abbellito" dalla formattazione


E in TS-2021 controllando rapidamente sembra che i secondi siano sempre 00.
Re: Full Outer Join - Timestamp non corrispondente - aggiunta di più righeGrazie Dale per i tuoi sforzi e per avermi presentato il modello di dati mancanti.
Re: Full Outer Join - Timestamp non corrispondente - aggiunta di più righeGrazie, ho imparato qualcosa di nuovo sia nella formattazione che nell'utilizzo di altre formule. Secondi rimossi. Dopo averlo fatto ho provato il Join.... Ha funzionato.
Re: Full Outer Join - Timestamp non corrispondente - aggiunta di più righesono ancora perplesso:
Nel fascicolo " AppST-2021-Test.jmp" Le prime righe (diciamo 1-10- 3 gennaio 2021 3:57- 3 gennaio 4:06 nella colonna (2PA TS) corrispondono a

Righe 3118-3127 nel file "TS-2021" -- Non è vero?

Allora perché vediamo "punti" contro quei valori nel file dei risultati dalle righe 3824-3833
Ho pensato che tutti i valori dovessero essere popolati rispetto a questi timestamp corrispondenti.

La mia comprensione non è corretta? Cosa mi manca?
Re: Full Outer Join - Timestamp non corrispondente - aggiunta di più righeAlmeno il timestamp dell'APP ST-2021-Test ha anche secondi, non solo minuti. Tu dovrai rimuovere quelli primi, non solo cambiano formato in qualcosa senza secondi, perché sono ancora lì. Un modo per rimuovere i secondi è dedurre Second(Timestamp) dal timestamp.
Show(AsDate(Today() - Second(Today())));
Re: Full Outer Join - Timestamp non corrispondente - aggiunta di più righeAncora un po' - ho guardato il modello di dati mancanti nel tuo file unito e l'ho allegato - corrisponde a quello che ho trovato.Le 526.306 righe sono costituite dalle 525.583 righe senza corrispondenza del file TS-2021, dalle 706 righe senza corrispondenza del file App ST-2021 e dalle 17 righe con corrispondenza, per un totale di 526.306 righe presenti nel file unito.
Re: Full Outer Join - Timestamp non corrispondente - aggiunta di più righeNon so dire a cosa ti riferisci.Quando abbino escludendo tutte le non corrispondenze, ci sono 17 righe che corrispondono in entrambi i file.Se includo le mancate corrispondenze da TS-2021, ottengo un totale di 525.600 righe.Se includo non corrispondenze da entrambi i file, ottengo 526.306 righe.Quindi, ci sono 17 date in entrambi i file, 525.583 righe che hanno solo date 2PA TS e 706 che hanno solo date Timestamp.Se ti unisci includendo le non corrispondenze per entrambi e quindi selezioni le righe in cui manca ogni colonna di data, abbinerai quei numeri.E quei numeri vedono tutti come quello che dovresti ottenere se ci sono 17 date che corrispondono davvero.