Tutorial for å skrive SQL Express spørringer

Tutorial for å skrive SQL Express spørringer


SQL Server Express er en relasjonsdatabase styringssystem tilgjengelig gratis fra Microsoft. En relasjonsdatabase kan du lagre store mengder data i tabeller. Hver tabell inneholder data om en bestemt type objekt som produkter eller mennesker. Tabellkolonner identifisere egenskaper for objektet som navn, adresse eller pris. Hver tabell rad inneholder eiendomsverdiene for ett objekt.

Du kan hente og endre informasjon i en SQL Server Express database ved utstedelse av Transact Structured Query Language (T-SQL) spørringer.

Bruksanvisning

Utfør spørringer til å hente data

1 Klikk på "Start" -knappen på oppgavelinjen for å vise Start-menyen. Velg "Alle programmer" menyen. Velg "Microsoft SQL Server 2008" menyen. Høyreklikk på "SQL Server Management Studio" menyen, og velg "Kjør som Administrator." Klikk på "Connect".

2 Utvid ikonet som har samme navn som datamaskinen, hvis det ikke allerede er utvidet. Utvid "Databases" -ikonet ved å klikke på "+" ved siden av den. Velg "Adventure." Klikk "New Query" i verktøylinjen. Nå har du en spørring vindu åpent som du kan bruke til å utføre spørringer mot Adventureworks database.

3 Skriv inn følgende i søket vinduet, og klikk på "Kjør" -knappen for å utføre spørringen du skrev:

SELECT * FROM Person.Contact

En SELECT-setning henter data fra en database. Spørringen du nettopp henrettet vil ha returnert alle rader og alle kolonner fra en tabell som heter "Person.Contact" og vises dem i "Resultater" -panelet under søket vinduet. Resultatet av å gjennomføre en SELECT-setning kalles et resultatsett.

En SELECT-setning har to nødvendige deler: en SELECT-ledd og et FROM-ledd. FROM-leddet identifiserer tabellen som du ønsker å hente data. SELECT-leddet identifiserer hvilke kolonner du vil hente fra bordet. Stjernen (*) er et wild card karakter, som returnerer verdiene i alle kolonner.

4 Endre teksten i søket vinduet som følger, og trykk F5-tasten:

VELG ContactID, Tittel, Fornavn, Etternavn, EmailPromotion Fra Person.Contact

Ved å trykke på F5-tasten utfører også en spørring. Legg merke til at resultatsettet omfatter bare ContactID, tittel, Fornavn, Etternavn og EmailPromotion data fra tabellen. Noen ganger kan en tabell inneholder mye data du ikke trenger å se; du kan liste kolonnenavn i SELECT-leddet for å begrense kolonneverdier tilbake til bare de dataene du trenger å vite.

5 Endre teksten i søket vinduet som følger, og trykk F5-tasten:

VELG ContactID, Tittel, Fornavn, Etternavn, EmailPromotion Fra Person.Contact WHERE EmailPromotion = 2

Søket vil bare ha returnert radene med en EmailPromotion verdi på 2. Du oppnådd dette ved å legge til et WHERE-ledd til søket og angir en tilstand av "EmailPromotion = 2." Hvis du trenger å søke etter rader som oppfyller en bestemt tilstand, kan du legge et WHERE-ledd til SELECT-setningen. WHERE-leddet er valgfritt og følger FROM-leddet.

Sorter og oppsummer data

6 Endre teksten i søket vinduet som følger, og trykk F5-tasten:

VELG ContactID, Tittel, Fornavn, Etternavn, EmailPromotion Fra Person.Contact ORDER BY EmailPromotion

Søket vil ha returnert alle radene, men sortert dem etter verdien i EmailPromotion kolonnen. Du gjorde dette skje ved hjelp av en ORDER BY-ledd --- en annen valgfri del av SELECT-setningen brukes til å sortere dataene i resultatsettet.

7 Endre teksten i søket vinduet som følger, og trykk F5-tasten:

VELG ContactID, Tittel, Fornavn, Etternavn, EmailPromotion Fra Person.Contact ORDER BY EmailPromotion DESC

Når du bruker en ORDER BY-ledd uten å angi sorteringsrekkefølgen, vil resultatet sett vises i stigende rekkefølge (fra A til Z, eller lavest til høyest). Du kan legge til "DESC" til slutten av ORDER BY-leddet til å sortere dataene i synkende rekkefølge (Z til A eller høyest til lavest).

8 Endre teksten i søket vinduet som følger, og trykk F5-tasten:

SELECT count (*) Som 'Total' Fra Person.Contact

En av de kraftigste funksjonene i T-SQL er evnen til å oppsummere data. Spørringen du nettopp henrettet telles alle radene i Person.Contact bordet og returnerte resultatet av beregningen i en kolonne som heter Total. SQL Server utført denne magiske fordi du brukte «Greven

()" i SELECT-leddet. "Count ()" er kjent som en samlefunksjon fordi den utfører en beregning på data i flere rader og returnerer resultatet av beregningen.

9 Endre linjen i søket vinduet som følger, og trykk F5-tasten:

SELECT EmailPromotion, Count (*) Som 'Total' Fra Person.Contact GROUP BY EmailPromotion

Resultatene bør ligne på følgende:

EmailPromotion Total
-------------- -----------
0 11158
1 5044
2 3770

Spørringen du nettopp henrettet gruppert alle radene i henhold til verdien i EmailPromotion kolonnen og telles antall rader i hver gruppe. Det vises deretter et resultatsett med to kolonner: en som inneholder verdien i EmailPromotion kolonnen og den andre som inneholder antall rader i tabellen som passer denne verdien. GROUP BY-leddet er en valgfri del av SELECT-setningen som identifiserer navnet på kolonnen som vil skille data inn i grupper før oppsummerer det.

Hint

  • Du kan laste ned SQL Server 2008 Express Edition og Adventure database fra Microsofts nettsted.
  • Trinnene gjelder for Windows 7. Du kan bruke Windows XP Service Pack 2 (eller senere). Men hvis du utfører trinnene på Windows XP, vil du ikke trenger å velge "Kjør som Administrator" ved åpning av SQL Server Management Studio.
  • Når du bruker GROUP BY-ledd, kan SELECT-leddet bare inneholde kolonnenavnene i GROUP BY-leddet og aggregerte funksjoner.
  • Transact-SQL søkeord som SELECT og hvor er ikke store og små bokstaver. Men noen versjoner av Adventure database og små bokstaver. Hvis spørringene gi deg feil når du utfører dem, sørge for at du har skrevet dem nøyaktig, inkludert store bokstaver.