Assenza di dati della query non suggerisce solo al momento presente. Un record manca, tuttavia , è un dato che potrebbe o dovrebbe essere presente, ma non lo è. Ad esempio , i dati del cliente e gli ordini risiedono in tabelle Customers e Orders . Un elenco dei clienti è richiesto , e voi , il programmatore , assumere ogni cliente ha un ordine . Fornendo ai clienti di ordini dovrebbe fornire l' elenco dei clienti corretta , ma lo fa? Elenco clienti dai clienti possono produrre di più , suggerendo alcuni clienti hanno dispersi ordini. È necessario verificare che i clienti mancano ordini e quindi capire se questa circostanza è di progettazione o di un bug . Istruzioni 
 1 
 Mostra clienti distinti nella tabella Clienti. Per esempio : 
 
 selezionare i clienti C.CUSTOMERIDFROM DISTINTI C 
 2 
 Mostra clienti distinti in tabella ORDINI . Per esempio : 
 
 SELEZIONA GLI ORDINI O.CUSTOMERIDFROM DISTINTI O 
 3 
 Determinare i clienti con ordini mancanti combinando i punti 1 e 2 in una subquery correlata 
 < p . > SELECT DISTINCT C.CUSTOMERIDFROM CLIENTI CWHERE NOT EXISTS ( SELECT * FROM ORDINI OWHERE O.CUSTOMERID = C.CUSTOMERID ) per 
 esiste è una funzione di Oracle che i test per l'esistenza di record restituiti sottoquery . Prefazione di test ", non" per l'assenza di registrazioni . Qui , la sottoquery soddisfa i clienti in entrambe le tabelle . Partite risultati restituiti , il che escluderebbe quelli abbinati CustomerId di dalla principale set di risultati . Solo CustomerId di senza partita O.CUSTOMERID verrebbe visualizzato . 
 4 
 alternativa, determinare i record mancanti da una visione composita di cusotmer e tavoli ordine. 
 
 SELECT DISTINCT C.CUSTOMERIDFROM CLIENTI C , ORDINI OWHERE C.CUSTOMERID = O.CUSTOMERID ( +) e O.CUSTOMERID è nullo 
 
 Se si sospetta la tabella ordine poteva mancare record , quindi provare questa query per visualizzare lato C.CUSTOMERID e O.CUSTOMERID a fianco. La ( + ) invoca un join esterno sinistro , che indica a Oracle di mostrare tutti i dati corrispondenti dalla WHERE plus ' s dalla tabella di sinistra che non hanno alcuna corrispondenza O.CUSTOMERID ' qualsiasi C.CUSTOMERID s nella tabella a destra . 
 < p > Se ci sono ' s senza O.CUSTOMERID matching' C.CUSTOMERID s , essi mostrano con valori nulli per s l' inesistente O.CUSTOMERID ' . Le righe che dispongono di tali valori nulli rappresentano i record di ordini mancanti. 
 
 Se la lista è troppo lunga per l'ispezione visiva , la seconda istruzione WHERE garantisce i risultati sono limitati a s C.CUSTOMERID ' con gli ordini mancanti.