Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> Computer Programming Languages >> Content
Hoe te Missing Records SQL zoeken
Afwezigheid van opgevraagde data suggereert alleen momenteel niet aanwezig . Een ontbrekende record echter gegevens die kunnen of moeten aanwezig zijn maar niet . Bijvoorbeeld , klantgegevens en orders wonen in tabellen Klanten en Orders . Een klantenlijst wordt gevraagd , en u , de programmeur , neem elke klant heeft een bestelling . , Die klanten van bestellingen moeten de juiste klantenlijst te bieden , maar doet het ? Listing klanten van klanten kan opleveren meer , suggereert sommige klanten hebben ontbrekende orders. Je moet nagaan welke klanten ontbreken orders en dan begrijpen als deze omstandigheid is door het ontwerp of een bug . Instructies

Beeldscherm verschillende klanten 1 in tabel KLANTEN . Bijvoorbeeld :

SELECT DISTINCT C.CUSTOMERIDFROM KLANTEN C

Beeldscherm verschillende klanten 2 in tabel ORDERS . Bijvoorbeeld :

SELECT DISTINCT O.CUSTOMERIDFROM BESTELLINGEN O
3

Bepaal klanten met ontbrekende bestellingen door het combineren van de stappen 1 en 2 in een gecorreleerde subquery

SELECT DISTINCT C.CUSTOMERIDFROM KLANTEN CWHERE NIET bESTAAT ( SELECT * FROM BESTELLINGEN OWHERE O.CUSTOMERID = C.CUSTOMERID ) op Twitter

bESTAAT is een Oracle- functie die tests voor het bestaan ​​van geretourneerde subquery records. Voorafgaat met " NIET " test op de afwezigheid van records. Hier , de subquery overeenkomt klanten in beide tabellen . Wedstrijden terugkeer resultaten, die zou uitsluiten die afgestemd customerId 's van het belangrijkste resultaat set . Alleen customerId 's zonder O.CUSTOMERID wedstrijd zou worden weergegeven .
4

alternatief bepalen ontbrekende records uit een samengestelde weergave van cusotmer en ORDER tafels .

SELECT DISTINCT C.CUSTOMERIDFROM KLANTEN C , ORDERS OWHERE C.CUSTOMERID = O.CUSTOMERID ( + ) en O.CUSTOMERID null

Als u vermoedt dat de Orde tafel zou kunnen missen records, probeer dan deze query te C.CUSTOMERID en O.CUSTOMERID kant weer aan zij . De ( + ) roept een left outer join , die Oracle vertelt aan alle overeenkomende gegevens van de WHERE statement plus eventuele C.CUSTOMERID ' s uit de linker tabel die geen overeenkomende O.CUSTOMERID hebben ' s aan de rechterzijde tafel .
Tonen

Als er C.CUSTOMERID ' s zonder de aanpassing O.CUSTOMERID ' s , zullen ze laten zien met null-waarden voor de niet-bestaande O.CUSTOMERID ' s . De rijen met dergelijke nullen vertegenwoordigen de ontbrekende ordeverslagen .

Als de lijst te lang is voor visuele inspectie , de tweede WHERE statement zorgt ervoor dat de resultaten zijn beperkt tot C.CUSTOMERID ' s met het missen van orders.

Previous: Next:
  Computer Programming Languages
·Hoe maak je een DIV positie in…
·Hoe de 1087 Syntax Error Fix M…
·Wat zijn Streaming klassen? 
·Hoe kan ik HTML Tags converter…
·Problemen met een Runtime Erro…
·Verschillen van Perl en PHP 
·Hoe te verwijderen van Oracle …
·Hoe maak je een EXE Van een . …
·Hoe kan ik codes welke een tek…
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een optie Box in Visual Basi…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·VB.Net & Hoe Business Objects Expose Als…
·Hoe te Loop Batch Processing in Python 
·Hoe een bestand op SVN Eclipse Delete 
·Hoe maak je een Screen Clear en Zet een …
·Hoe maak je een Microcontroller in Multi…
·Hoe maak je een Flash PHP Mysql Website …
·Hoe te Yesterday's Date zoeken in PHP 
·Hoe om te controleren voor Bots Met Cold…
·Hoe je zaak Tutorials gebruiken 
Copyright © Computer Kennis http://www.nldit.com