| Hjem | Hardware | Netværk | Programmering | software | Fejlfinding | systemer | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringssprog
  • Delphi programmering
  • Java programmering
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl programmering
  • Python Programming
  • Ruby Programming
  • Visual Basics Programmering
  •  
    Computer Viden >> Programmering >> Computer Programmeringssprog >> Content
    Hvordan man finder forsvundne poster ved hjælp af SQL
    Manglende forespørges kun data tyder i øjeblikket ikke til stede. En manglende post , dog er data, som kan eller bør være til stede , men er ikke . For eksempel bor kundeoplysninger og ordrer i tabeller Kunder og Ordrer . En kunde liste der anmodes , og dig, programmør, antager hver kunde har en ordre. Forudsat kunder fra ordrer bør give den korrekte kundeliste , men gør det? Listing kunder fra Kunderne kan give mere , hvilket tyder på nogle kunder har mangler ordrer. Du skal undersøge , hvilke kunder der mangler ordrer, og derefter forstå, hvis denne omstændighed er tilsigtet eller en fejl . Instruktioner
    1

    Display distinkte kunder i tabellen Kunder . For eksempel : Hej

    select distinct C.CUSTOMERIDFROM KUNDER C
    2

    Display særskilte kunder i tabellen Ordrer. For eksempel : Hej

    select distinct O.CUSTOMERIDFROM ORDRER O
    3

    Bestem kunder med manglende ordrer ved at kombinere trin 1 og 2 i en korreleret underforespørgsel
    < p . > SELECT DISTINCT C.CUSTOMERIDFROM KUNDER CWHERE NOT EXISTS ( SELECT * FROM Ordrer OWHERE O.CUSTOMERID = C.CUSTOMERID )

    eksisterer, er en Oracle -funktion , der tester for tilstedeværelsen af ​​returnerede underforespørgsel optegnelser. Prefacing med ", ikke" tests til manglende registreringer. Her underforespørgslen matcher kunderne i begge tabeller . Kampe returnere resultater , hvilket ville udelukke de matchede Kunde s fra de vigtigste resultat sæt . Kun Kunde s uden O.CUSTOMERID match ville blive vist.
    4

    Alternativt , fastlægge manglende poster fra en sammensat visning af cusotmer og orden tabeller.

    SELECT DISTINCT C.CUSTOMERIDFROM KUNDER C , ORDRER OWHERE C.CUSTOMERID = O.CUSTOMERID (+) og O.CUSTOMERID er null
    p Hvis du har mistanke om Order tabellen kunne være mangler optegnelser , så prøv denne forespørgsel til at vise C.CUSTOMERID og O.CUSTOMERID side om side. Den (+) påberåber sig en venstre ydre join , som fortæller Oracle at vise alle matchende data fra WHERE erklæring plus enhver C.CUSTOMERID ' s fra den venstre tabel, der ikke har nogen matchende O.CUSTOMERID ' s i højre side bordet.
    < p> Hvis der er C.CUSTOMERID 's med nogen matchende O.CUSTOMERID ' s , vil de vise med null -værdier for ikke-eksisterende O.CUSTOMERID 's . Rækkerne med sådanne nuller repræsenterer de manglende ordreposter .

    Hvis listen er for lang til visuel inspektion , den anden WHERE erklæring sikrer resultaterne er begrænset til C.CUSTOMERID 's med manglende ordrer.

    Forrige :

    næste :
      Relaterede artikler
    ·Hvordan man skriver en Byte Array til fil 
    ·Hvordan man laver en HEX fil 
    ·Sådan Indtast Registration Indtast Reason 4.0 
    ·Sådan Konverter Visual Logic til Visio 
    ·Sådan oprettes Xsd 
    ·Hvordan man kan reducere MPI 
    ·Sådan opdaterer Vælg T-SQL 
    ·Modularisering Teknik 
    ·Hvad er Python 2.4.3 
    ·Sådan gendannes spool filer 
      Anbefalede Artikler
    ·COBOL Fakta 
    ·MySQL og Access Tutorial 
    ·Sådan ændres en primær nøgle i MySQL 
    ·Sådan Spring en vare Når Bejdsning i Python 
    ·Hvordan man opbygger et eksempel på en PHP Søg Websit…
    ·Sådan Tilslut Visual Basic til SQL 
    ·Sådan Konverter Int til String i Python 
    ·Sådan forespørges HTML-tabeller med VBA Access 
    ·Sådan konfigureres en Outlook kalender Script 
    ·Hvordan man laver en linje graf med Visual Basic 
    Copyright © Computer Viden http://www.computerdk.com