SQL SELECT Statement


Hente data ved hjelp av SQL velg erklæringen

SQL er en omfattende database språk. SQL, uttales Sequel eller bare SQL, er et programmeringsspråk som brukes for spørring relasjonsdatabaser etter en nonprocedural tilnærming. Når du trekke ut informasjon fra en database ved hjelp av SQL, er dette betegnes spørre databasen.

En relasjonsdatabase er implementert gjennom bruk av en relasjonsdatabase Management System (RDBMS). En RDBMS utfører alle de grunnleggende funksjonene i DBMS programvaren som er nevnt ovenfor, sammen med en rekke andre funksjoner som gjør relasjonsmodellen lettere å forstå og å implementere. RDBMS brukerne manipulere data ved bruk av en spesiell datamanipulasjon språk. Databasestrukturer er definert ved bruk av et datadefinisjonen språk. Kommandoene som brukere av systemet utfører for å lagre og hente data kan legges inn på en terminal med en RDBMS grensesnitt ved å skrive kommandoer, eller inn gjennom bruk av noen form for grafisk grensesnitt. DBMS behandler deretter kommandoene.

Evner i SELECT Statement

Innhenting av data fra database gjøres gjennom hensiktsmessig og effektiv bruk av SQL. Tre begreper fra relasjonsteori omfatte evnen til SELECT-setningen: projeksjon, utvelgelse, og bli med

Projection. Et prosjekt operasjon velger bare enkelte kolonner (felt) fra en tabell. Resultattabellen har et delsett av de tilgjengelige kolonner og kan omfatte alt fra en enkelt kolonne for alle tilgjengelige kolonner.

Utvalg: En valgprosedyren velger en undergruppe av rader (poster) i en tabell (relasjon) som tilfredsstiller et utvalg tilstand. Muligheten til å velge rader fra ut av komplett resultatsettet kalles Selection. Det innebærer betinget filtrering og data iscenesettelse. Undergruppe kan variere fra noen rader, hvis ingen av radene tilfreds utvalget tilstand, til alle radene i en tabell

Kunde. En operasjon kombinerer data fra to eller flere tabeller basert på en eller flere felles kolonneverdier. En operasjon gjør at et informasjonssystem brukeren å behandle forholdet som eksisterer mellom bordene. Den operasjon er veldig kraftig, fordi det gjør det mulig for brukere av systemet for å undersøke relasjoner mellom dataelementer som kanskje ikke var forventet på tidspunktet som en database er utformet.

Tenk tabellen ovenfor strukturer. Henter FIRST_NAME navn, department_id og lønn for en enkelt ansatt fra ANSATTE tabellen er Projection. Henter ansatte detaljer som lønn er mindre enn 5000, fra ANSATTE tabellen er Selection. Henter ansattes fornavn, avdelingsnavn ved å bli med ansatte og avdelinger blir med

Basic SELECT-setning

Den grunnleggende syntaks for en SELECT-setning presenteres nedenfor
SELECT [DISTINCT.. | ALL] {* | select_list} fra {table_name [alias] | view_name} [{table_name [alias] | view_name}] ... [WHERE betingelse] [GROUP BY condition_list] [HAR tilstand] [ORDER BY {kolonne | column_ # [ASC | DESC]} ...

SELECT klausulen er obligatorisk og utfører relasjons prosjektet operasjonen.

FROM-leddet er også obligatorisk. Det identifiserer en eller flere tabeller og /eller synspunkter som å hente data kolonne vises i en resultattabell.

WHERE-leddet er valgfritt og utfører relasjonsvalgprosedyren. Den angir hvilke rader som skal velges.

GROUP BY-leddet er valgfritt. Det organiserer data i grupper med en eller flere kolonnenavnene i SELECT-leddet.

De valg HAVING stiller vilkår om hvilke grupper som skal inkluderes i en resultattabell. Gruppene er spesifisert av GROUP BY-leddet.

ORDER BY-leddet er valgfritt. Den sorterer søkeresultatene etter en eller flere kolonner i stigende eller synkende rekkefølge.

Aritmetiske uttrykk og NULL-verdier i SELECT-setningen

En aritmetisk uttrykk kan creaeted hjelp kolonnenavnene, operatører og konstant verdier for å legge inn et uttrykk i en SELECT-setning. Operatøren som gjelder for en kolonne er avhengig av kolonnens datatype. For eksempel vil aritmetiske operatører ikke passer for tegnbokstavelige verdier. For eksempel, etter SELECT ansatt_nr, sal * 12 ANNUAL_SALFROM ansatte;

Listen spørringen inneholder aritmetisk uttrykk (sal * 12) til å beregne årslønn på hver ansatt

Aritmetiske operatorer
<. p> Operatører handle på søylene (kjent som operander) å føre til et annet resultat. Ved flere operatører i et uttrykk, er rekkefølgen på evaulation bestemt av operatøren forrang. Her er de elementære regler motstrid -

multiplikasjon og divisjon skje før multiplikasjon og divisjon

Operatører på samme prioritet evalueres fra venstre til høyre..

Bruk paretheses å overstyre standard virkemåte for operatørene.

Nedenfor Tabellen viser forrang av operatørene, i slike tilfeller. Forrang nivå Operator Symbol Operation
Beskrivelse
Operatør
forrang
Addition + Laveste subtraksjon - Laveste multiplikasjon * Medium Division /Medium Brak () Høyeste

Undersøke under spørsmål (a), (b) og (c)

SQL> velg 2 * 35 Fra DUAL;

SQL> SELECT lønn + 1500 Fra ansatte;

SQL> SELECT FIRST_NAME, lønn, lønn + (commission_pct * lønn) Fra ansatte;

Query (a) multipliserer to tall, mens (b) viser tillegg av $ 1500 til lønn til alle ansatte. Query (c) viser tillegg av provisjon komponent til ansattes lønn. Per forrang, ville først provisjon beregnes på lønn, og deretter lagt til lønnen.

Kolonne Alias ​​

Et alias brukes til å endre navn på en kolonne eller et uttrykk under displayet. Aliaset til en kolonne eller et uttrykk vises som overskrift i produksjon av en spørring. Det er nyttig for å gi en meningsfull overskrift til lange uttrykk i SELECT spørring. Som standard vises alias i store bokstaver i søket utgang uten mellomrom. For å overstyre denne atferden, må alias vedlegges i doble anførselstegn for å bevare saken og plasser i aliasnavnet
Velg pris * 2 som DOUBLE_PRICE, pris * 10 "Double Price" Fra produkter;. DOUBLE_PRICE Double Pris ---- -------- ------------ 39,9 39,960 6051,98 51.98
sammenkjedingsoperatorer

Sammenkobling operatøren kan brukes til å bli to strengverdier eller uttrykk i en SELECT spørsmål. Den doble vertikale linjen symbol brukes som streng sammensetning operatør. Det gjelder kun for tegn- og string kolonneverdiene resulterer i en ny karakter uttrykk. Eksempel
SQL> velg 'ORACLE' || ' Sertifisering "Fra dual;

Listen spørring viser sammensetning av to tegn Literaler verdier

Literaler

Alle hardkodet verdi, som ikke er lagret i databasen, i SELECT-leddet, er. kjent s Literal. Det kan være tall, tegn eller datoverdien. Karakter og datoverdier må legges innenfor anførselstegn. Tenk nedenfor SQL queries.examples med å bruke konstanter av ulike datatyper i SQL-spørringer.

Spørringen nedenfor bruker to karakter literaler å bli med dem sammen.
SQL> velg 'ORACLE' || ' Sertifisering "Fra DUAL

Spørringen nedenfor bruker karakter konstanter til ganske skrive ut den ansattes lønn.
SQL> SELECT FIRST_NAME || 'tjener' || lønn || ' som av '||| sysdateFROM ansatte
Sitat Operator

Sitatet operatør brukes til å angi anførselstegn delimiter av din egen. Du kan velge en praktisk skilletegn, depedning på dataene.
Velg department_name || 'Avdeling' || q '[' s leder Id:] '|| manager_idFROM avdelinger;
NULL

Hvis en kolonne ikke har en klar verdi, det er ansett som NULL. NULL verdi betegner ukjent eller utilgjengelig. Det er ikke null for tallverdier, ikke tom plass for tegnverdier.

Kolonner med NULL verdi kan velges i en SELECT spørring, og kan være en del av et aritmetisk uttrykk. Enhver aritmetisk uttrykk ved hjelp av NULL verdier resulterer i NULL. Av denne grunn må søyler med NULL verdi håndteres annerledes ved å angi sine alternative verdier ved hjelp av Oracle leverte funksjoner som NVL eller NULLIF
SQL> SELECT NULL + 1000 NUM Fra DUAL;. NUM --------
DISTINCT Søkeord

Hvis dataene forventes å ha like resultater ved å bruke nøkkelordet DISTINCT å eliminere duplikater og diplay bare de unike resultater i søket utgang. Bare de valgte kolonnene er validert for dobbeltarbeid og radene vil være logisk eliminert fra spørringen utgang. Å bli lagt merke til, må nøkkelordet DISTINCT vises like etter SELECT-leddet

Det enkle spørsmålet nedenfor viser bruken av DISTINCT å vise unike kjøpe IDer fra ANSATTE tabellen
SQL> SELECT DISTINCT DEPARTMENT_ID Fra ansatte..; DEPARTMENT_ID --------------- 10203040
Beskriv kommando

Det strukturelle metadata i en tabell kan oppnås ved å spørre databasen for listen over kolonner som utgjør den ved hjelp den DESCRIBE kommandoen. Det vil liste de brukte kolonnenavn, deres null eiendom og datatype

Syntax.
DESC [RIBE] [SCHEMA] .object navn

For eksempel
DESC ANSATT

vise tabellen employee struktur dvs. kolonner, deres datatyper, presisjon og ha nullverdier eiendom. Anmeldelser