2012-01-12 16 views
5

ho due tabelle e desidera confrontare file su SQLite come questoConfrontando due tabelle in SQLite

table1   table2 
field1   field1 

a     a 
b     d 
c     f 
d     g 
e 
f 
g 
h 
i 

e voglio risultato come questo

result_table 
field1 

b 
c 
e 
h 
i 

Come è la sintassi in SQLite produrre? Grazie

+0

possibile duplicato di [Come differenziare due tabelle] (http://stackoverflow.com/questions/2819151/how-to-differentiate-two-tables) –

risposta

7
SELECT DISTINCT Field1 
FROM Table1 
WHERE Field1 Not IN 
    (SELECT DISTINCT Field1 FROM Table2) 
+0

Grazie john, funziona. – kuslahne

3
SELECT columns1 FROM table1 EXCEPT SELECT columns2 FROM table2; 

Lo SQLite clausola EXCEPT restituisce tutte le righe della SELECT sinistra che non sono nel risultato della seconda istruzione SELECT. Il numero di colonne selezionate deve essere uguale in entrambe le istruzioni SELECT.

Questo funziona bene per i tavoli di dimensioni medio-piccole. Evita le tabelle con milioni di righe.

Vedere Compound Select Statements e la documentazione dell'istruzione SQLite SELECT.

+0

L'aggiunta di alcune spiegazioni al tuo codice ti aiuterà a renderlo una risposta migliore. – NathanOliver