Come eseguire Anti-Join?Ciao a tutti,
un cliente mi ha chiesto di anti-join. Un anti join sinistro, per essere più precisi:
"UN sinistra anti join : questo join restituisce righe nella tabella di sinistra che non hanno righe corrispondenti nella tabella di destra."
( https://mode.com/blog/anti-join-examples/ )
Non riuscivo a capire come farlo nell'interfaccia (né JOIN né Query Builder).
Qualcuno potrebbe per favore illuminarmi? 
Grazie,
Floriano
Ri: Come eseguire Anti-Join?Ciao Floriano,
Confrontare le tabelle di dati darebbe la funzionalità che il tuo utente sta cercando?
Malcom
Ri: Come eseguire Anti-Join?Questo potrebbe essere fatto in un processo in due fasi. Scegli un join esterno completo (includi le non corrispondenze sia sulla tabella principale che su quella "con"), ma assicurati di selezionare la casella di controllo "Match Flag". La colonna Flag di corrispondenza creata può essere utilizzata per indicare da quale tabella provengono i dati. Le righe con solo "Main" sono le righe anti-join che stanno cercando.
Ri: Come eseguire Anti-Join?CIAO,
Per me, è un processo in 2 fasi. Esegui il join (incluse le non corrispondenze dalla tabella principale), quindi seleziona le righe in cui manca/vuoto un valore dalla tabella "with". Queste righe selezionate dovrebbero essere le righe in cui non ci sono corrispondenze nella tabella principale.
Questo sembra corrispondere alla soluzione nel post del blog menzionato.
Ri: Come eseguire Anti-Join?Grazie a tutti! Penso che questa sia la strada da percorrere @Dan_Obermiller @Ryan_Gilmore . Ottimo anche il suggerimento @malcolm_moore1 , non ci ho nemmeno pensato, ma potrebbe anche essere prezioso!
Migliore
Floriano
Ri: Come eseguire Anti-Join?Questo potrebbe essere un po 'contorto ma potresti fare una query SQL personalizzata come:
SELECT *
FROM "jmptable " t1
WHERE t1.IDcolumn NOT IN (SELECT t2.IDcolumn FROM "jmptable2" t2);
Dove jmptable è il nome della prima tabella, jmptable2 è il nome della seconda tabella, IDcolumn è la chiave per la prima e la seconda tabella.
È possibile utilizzare JMP Query Builder sotto le tabelle. Selezionare le due tabelle, utilizzare il join esterno sinistro standard sulle due tabelle, quindi fare clic su Crea query. Successivamente, vai sul triangolo rosso e scegli Converti in SQL personalizzato e usa il codice sopra.
Oppure potresti scrivere direttamente il JSL.
Penso che questo sia un buon elenco per supportare più tipi di join nelle piattaforme Query Builder e Join.
Ri: Come eseguire Anti-Join?Ciao Floriano,
Utilizzando JMP Query Builder si esegue un join sinistro con t1 e t2. dove t1.id = t2.id e utilizzare dove la clausola su t2.id è nulla.
Questa query restituirà solo i valori nella tabella 1 (t1) ma non nella tabella 2 (t2).
saluti,
Stan
Anti-Join with JMP Query BuilderAnti-Join with JMP Query BuilderAnti-Join con JMP Query Builder
SELECT t1.id, t1.t1_value
FROM "untitled 1201" t1
LEFT OUTER JOIN "untitled 1202" t2
ON ( t1.id = t2.id )
WHERE ( ( ( t2.id IS NULL ) ) ) ;