Databasetabeller kan indeholde en bred vifte af data. Uden at oprette restriktioner og nøgler fra starten, kan det imidlertid være svært at navigere gennem alle disse oplysninger . Som et eksempel: sige, at du udvikler en tabel for forfattere , men tillader brugerne at indtaste deres egne værdier . Du kan ende op med seks forskellige versioner af Edgar Allan Poe , når du virkelig kun ønsker én. For at gøre denne form for data meningsfulde , er du nødt til at skrive forespørgsler, der vil konsolidere dubletter. Instruktioner
1
Skriv en grundlæggende forespørgsel for at trække data fra den tabel, du er interesseret i.
Eksempel forespørgsel i SQL og Oracle -syntaks : SELECT AuthorID , DisplayNameFROM tblAuthors
< br > 2.
Rediger din forespørgsel til at tælle antallet af gange, en post vises
Eksempel forespørgsel i SQL-syntaks : . SELECT COUNT ( AuthorID ) AS NumDuplicates , DisplayNameFROM tblAuthorsGROUP BY DisplayName
< br > 3
filtrere listen for at vende tilbage kun poster , der vises mere end én gang
Eksempel forespørgsel i SQL-syntaks : . SELECT DisplayNameFROM tblAuthorsGROUP VED DisplayNameHAVING COUNT ( AuthorID )> 1
Eksempel forespørgsel i Oracle syntaks : SELECT DisplayName , COUNT ( AuthorID ) AS NumDuplicatesFROM tblAuthorsGROUP BY DisplayNameWHERE NumDuplicates > 1
4
Rediger din forespørgsel til at understøtte mere komplekse situationer , der ikke involverer en primær nøgle. Det følgende eksempel vil bringe tilbage poster, som har tre kolonner, som er de samme
Eksempel forespørgsel i SQL-syntaks : . SELECT Fornavn, mellemnavn , LastNameFROM tblAuthorsGROUP BY Fornavn, mellemnavn , LastNameHAVING COUNT ( LastName )> 1 < br >
Eksempel forespørgsel i Oracle syntaks : SELECT Fornavn, mellemnavn , COUNT ( LastName ) AS NumDuplicatesFROM tblAuthorsGROUP BY Fornavn, mellemnavn , LastNameWHERE NumDuplicates > 1