Det strukturerede forespørgselssprog tilbyder databasebrugere en kraftfuld og fleksibel datahentningsmekanisme - SELECT-sætningen. I denne artikel tager vi et kig på den generelle form for SELECT-sætningen og komponerer et par eksempeldatabase queries sammen. Hvis dette er din første foray i det strukturerede forespørgselssprogs verden, kan du måske gennemgå SQL fundamentals, før du fortsætter. Hvis du ønsker at designe en ny database fra bunden, bør det være et godt spring-off-punkt at lære at lave databaser og tabeller i SQL.
Nu hvor du har børstet op på det grundlæggende, lad os begynde vores udforskning af SELECT-sætningen. Som i tidligere SQL-lektioner, fortsætter vi med at bruge udsagn, der er i overensstemmelse med ANSI SQL-standarden. Du kan eventuelt høre dokumentationen til dit DBMS for at afgøre, om den understøtter avancerede muligheder, der kan forbedre effektiviteten og / eller effektiviteten af din SQL-kode.
Den generelle form for SELECT-erklæringen
Den generelle form for SELECT-sætningen vises nedenfor:
VÆLG select_list FRA kilde HVOR betingelser) GROUP BY ekspression AT HAVE tilstand BESTIL BY ekspression Den første linje i sætningen fortæller SQL-processen, at denne kommando er en VÆLG erklæring og at vi ønsker at hente oplysninger fra en database. Det select_list giver os mulighed for at angive den type information, vi ønsker at hente. Det FRA klausul i anden linje specificerer den eller de specifikke database tabel (er) involveret og HVOR klausul giver os mulighed for at begrænse resultaterne til de poster, der opfylder det angivne betingelser) . De sidste tre klausuler repræsenterer avancerede funktioner uden for denne artikels anvendelsesområde - vi vil undersøge dem i fremtidige SQL-artikler. Den nemmeste måde at lære SQL på er eksempelvis. Med det i tankerne, lad os begynde at kigge på nogle database forespørgsler. I hele denne artikel bruger vi medarbejderens bord fra den fiktive XYZ Corporation's human resource database til at illustrere alle vores forespørgsler. Her er hele bordet: Medarbejder-ID Efternavn Fornavn Løn Rapporterer til 1 Smith John 32000 2 2 scampi Sagsøge 45000 NUL 3 Kendall Tom 29500 2 XYZ Corporation's direktør for menneskelige ressourcer modtager en månedlig rapport, der giver løn- og rapporteringsoplysninger for hver virksomheds medarbejder. Genereringen af denne rapport er et eksempel på SELECT-erklæringens enkleste form. Det henter blot alle de oplysninger, der findes i en database tabel - hver søjle og hver række. Her er spørgsmålet, der vil opnå dette resultat: VÆLG *FRA medarbejdere Temmelig ligetil, ikke? Den asterisk (*) der findes i select_list er et wildcard, der bruges til at informere databasen om, at vi gerne vil hente oplysninger fra alle kolonnerne i medarbejderens bord, der er identificeret i FROM-klausulen. Vi ønskede at hente alle oplysningerne i databasen, så det var ikke nødvendigt at bruge en WHERE-bestemmelse til at begrænse rækker valgt fra tabellen. Her er, hvad vores søgeresultater ser ud:
4 Jones Abraham 35000 2 5 Allen Regning 17250 4 6 Reynolds Allison 19500 4 7 Johnson Katie 21000 3 Henter en hel tabel
Medarbejder-ID Efternavn Fornavn Løn Rapporterer til ---------- -------- --------- ------ --------- 1 Smith John 32000 2 2 scampi Sagsøge 45000 NUL 3 Kendall Tom 29500 2 4 Jones Abraham 35000 2 5 Allen Regning 17250 4 6 Reynolds Allison 19500 4 7 Johnson Katie 21000 3