ComputereProgrammering

Selektionen (SQL)

Oversættelsen af SQL-forkortelse (sproget for strukturelt organiserede forespørgsler) afspejler det faktum, at forespørgsler er det mest anvendte element i SQL. Vælg de nødvendige rækker, automatisk udelukke overflødige data, spring over eller ombestille kolonnerne, der hjælper med at vælge (SQL) - en operatør, der fortæller DBMS at udlevere visse oplysninger.

Operatorsyntax

For at kunne bruge en operatør korrekt skal du først gøre sig bekendt med syntaksen for det pågældende programmeringssprog. Når vi taler specifikt om SQL-sproget, har Select (operatøren) følgende syntaks:

Vælg

Fortæller den database, vi overfører anmodningen. Dette er nøgleordet.

En, to, tre ...

Liste over kolonner til output

fra

Angiver navnet på tabellen, hvorfra dataene skal vælges. Det er også et påkrævet søgeord.

Dette er den såkaldte "korte" syntaks for operatøren, men det indikerer for os, at uden forespørgselsvalg og fra DBMS, vil vores forespørgsel ikke udføres.

Den komplette syntaks for operatøren er vist i følgende figur:

Her giver klausulen Where du kan forfine søgningen ved at angive en betingelse.

For at gruppere værdier og anvende en aggregatfunktion til dem, anvendes gruppen efter klausul, og for at angive resultatet efter gruppering anvendes forslaget Under.

Ordre af vil tillade dig at sortere værdierne for de valgte kolonner i stigende eller faldende rækkefølge.

с информацией: For at få en bedre forståelse af Select-operatøren, lad os forestille os, at i vores database er der følgende Kattebord med informationen:

Id

Race

navn

Fødselsdag

farve

1

Bobtail

herre

2017/04/01

Grå

2

Curl

finte

2017/03/16

hvid

3

Mau

panter

2017/03/30

sort

4

Bobtail

Tyson

2017/02/23

Grå

5

Burmilla

Athena

2017/08/01

sort

Hver række af bordet indeholder det unikke nummer af kattungen, dens race, kaldenavn, fødselsdato og farvning. Dernæst vil vi overveje, hvordan Select (SQL) operatøren arbejder, baseret på data fra denne tabel.

Hvordan hentes data fra en tabel

Som diskuteret ovenfor bruges søgeord altid til at vælge de rigtige oplysninger fra tabellen.

Efter Vælg søgeord er kolonner til output angivet. Du kan lave en liste over de nødvendige kolonner adskilt af et komma, så hele strukturen vil se sådan ud:

Vælg farve, race, navn

Fra katte

Som du kan se, kan vi arrangere kolonnerne i den rækkefølge, de er nødvendige for. Derudover kan vi kun vise de kolonner, vi har brug for.

Der er også en kort post for at se alle søjlerne på bordet. For at gøre dette, efter Select, er en asterisk (*) angivet med et mellemrum. Hele designet vil se sådan ud:

Vælg *

Fra katte

Resultatet af ovenstående forespørgsel er hele kattebordet, repræsenteret som det vises i slutningen af sidste afsnit.

Mange mennesker er interesserede i, hvordan man placerer resultaterne af udførelsen i SQL Select i en streng. Dette er oftest nødvendigt, når det er nødvendigt at kombinere efternavnet, fornavnet og protektionisten af personen, der er placeret i uensartede kolonner.

I vores tilfælde kombinerer vi kattens race og farve fra bordet Cats. Nuancen er, at forskellige DBMS bruger forskellige tegn til string-sammenkobling. I nogle tilfælde er dette kun et plus (+), i andre - en dobbeltlinie (||) eller en ampersand (&), nogle gange anvendes Concat operand. Derfor skal du læse annotationen til de specifikke DBMS, som du arbejder med, inden du slår sammen.

Vælg race || ',' || farve

Fra katte

Resultatet er følgende:

Race, Color

Bobtail, Grå

Curl, White

Mau, Black

Bobtail, Grå

Burmilla, sort

Ekskluderende overflødige data

Distinct - funktion Vælg (SQL), som gør det muligt at udelukke dobbeltarbejde af helt ens linjer fra resultatet af prøven.

For eksempel ønsker vi at finde ud af, hvilke katte der er i vores bord. Hvis vi bruger en simpel forespørgsel:

Vælg race

Fra katte

At vi får et helt forventet resultat:

Race

Bobtail

Curl

Mau

Bobtail

Burmilla

Som du kan se, duplikeres Bobtail-racen to gange. Argument Distinct vil eliminere duplikering, du skal blot udfylde forespørgslen:

Vælg særskilt race

Fra katte

Forfining af anmodningen

I virkeligheden udsender næsten ingen forespørgsel data som et komplet sæt af tabelrader. Lad os overveje, hvilken sætning i Select (SQL) gør det muligt at indstille kriterier for udvælgelse kun de nødvendige linjer.

Det er her. I denne sætning anvendes et prædikat - et betinget udtryk, der giver udgangen værdien "true" eller "false". Select-sætningen henter kun de data fra tabellen, for hvilket det betingede udtryk vil være True, eller "true."

Det vil hjælpe med at udklare med dette design en simpel prøve. Lad os sige, at vi vil vide alt om sorte katte.

Vælg *

Fra katte

Hvor farve = 'Sort'

Resultatet af denne forespørgsel er følgende rækker i tabellen:

3

Mau

panter

2017/03/30

sort

5

Burmilla

Athena

2017/08/01

sort

Du kan også kombinere betingelser ved hjælp af Og, Eller, Ikke logiske operatører.

Gruppe af

Gruppen efter klausul, der anvendes i Select (SQL), giver dig mulighed for at gruppere forespørgsler med værdien af en bestemt kolonne (eller kolonner), og derefter anvende den samlede funktion til dem.

De samlede funktioner omfatter:

  • Count - beregner antallet af rækker, der er valgt af forespørgslen.
  • Summen er den aritmetiske sum af alle valgte søjleværdier.
  • Min - udskriver minimum af de valgte søjleværdier.
  • Max er maksimum for de valgte kolonne værdier.
  • Gennemsnit er gennemsnittet.

Ordningen med dette forslag forstås let på et konkret eksempel. Lad os sige, at vi vil vide, hvor mange killinger af hver race vi har. For at gøre dette skal du generere følgende enkle forespørgsel:

Vælg race, tælle (*)

Fra katte

Gruppe efter race

Resultatet af udførelsen er følgende tabel:

Race

Count

Bobtail

2

Curl

1

Mau

1

Burmilla

1

Som du kan se, har vi to Bobtails med killinger, resten har kun en. I praksis kan opdrætteren ifølge denne anmodning forstå, hvilke racer katte er efterspurgte blandt købere, og som ikke er.

Det er sandsynligt, at det på grund af det store antal poster i et rigtigt bord stadig er nødvendigt for at afklare spørgsmålet og trække kun de racer af killinger, som ikke er flere, for eksempel ti. For at forfine eller filtrere grupper skal du bruge underklausulen. Det giver dig mulighed for at droppe bestemte grupper, der ligner Hvor-klausulen, som kasserer individuelle rækker. Tilstanden er givet af den samlede funktion. Vi vil tilføje forespørgslen:

Vælg race, tælle (*)

Fra katte

Gruppe efter race

Efter at have talt (*) <= 10

Da betingelsen sætter "antallet af killinger af hver race ikke er mere end 10", er resultatet det samme som i eksemplet uden specifikation. Men her er det vigtigt at forstå selve ordningen i forslagets arbejde. Men hvis vi ændrer den logiske tilstand til at have tæller (*) = 1, bliver resultatet reduceret til tre linjer og udsender racer af killinger, som kun en forlod.

sortering

Lad os lære bekendtgørelsen Orden i Select (SQL) operatøren, som giver dig mulighed for at sortere outputlinierne ved at øge eller formindske værdier i en eller flere kolonner.

Det er vigtigt at huske at Order by er den sidste sætning af hele konstruktionen af Select-sætningen. Den er placeret efter Vælg, Fra, Hvor, Gruppér efter, Under.

Ved sortering er der tre vigtige punkter:

1) Du kan angive et hvilket som helst antal kolonner, der hver især kan sorteres individuelt enten stigende (ASC) eller faldende (DESC).

2) Alle de angivne kolonner i ordren efter klausul skal være til stede blandt de valgte kolonner i Vælg.

3) Det er ikke nødvendigt at angive specifikke kolonne navne til sortering, du kan blot angive deres tal, under hvilke de går i Select-sætningen.

Vi håber, at du ved hjælp af denne artikel har fået grundlæggende viden om brugen af SQL-forespørgsler, og nu kan du nemt vælge de nødvendige oplysninger fra din DBMS.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 da.birmiss.com. Theme powered by WordPress.