Hjem Personlig finansiering Hvordan du lager en tabellvisning med SQL-dummies

Hvordan du lager en tabellvisning med SQL-dummies

Innholdsfortegnelse:

Video: Innføring i bruk av regneark 2025

Video: Innføring i bruk av regneark 2025
Anonim

Til tider vil du hente spesifikk informasjon fra KUNDE-tabellen i SQL. Du vil ikke se på alt - bare bestemte kolonner og rader. Det du trenger er en visning.

A visning er et virtuelt bord. I de fleste implementeringer har en visning ingen uavhengig fysisk eksistens. Visningsdefinisjonen finnes bare i databasens metadata, men dataene kommer fra tabellen eller tabellene hvorfra du får visningen. Utsikten er ikke fysisk duplisert.

Enkelt tabellvisning

Hvis informasjonen du vil ha finnes i et enkelt bord, kan du opprette en enkelt tabellvisning av dataene. For eksempel, anta at du vil se på navnene og telefonnumrene til alle kunder som bor i delstaten New Hampshire. Du kan opprette en visning fra KUNDE-tabellen som bare inneholder de dataene du vil ha. Følgende SQL-setning lager denne visningen:

CREATE VIEW NH_CUST AS SELECT KUNDE. Fornavn, KUNDE. LastName, KUNDE. Telefon FRA KUNDEN HVOR KUNDE. Stat = 'NH';

Du kan oppnå samme oppgave med mindre å skrive hvis SQL-implementeringen din antar at alle tabellreferanser er de samme som i FRA-klausulen. Hvis systemet gjør det fornuftig standardforutsetning, kan du redusere setningen til følgende linjer:

CREATE VIEW NH_CUST AS SELECT Fornavn, Etternavn, Telefon FRA KUNDEN HVOR STATEN = 'NH';

Selv om den andre versjonen er lettere å skrive og lese, er den mer sårbar for forstyrrelser fra ALTER TABLE-kommandoer. Slike forstyrrelser er ikke et problem for dette enkle tilfellet, som ikke har noe med, men synspunkter med JOIN er mer robuste når de bruker fullt kvalifiserte navn.

Flersidig visning

Oftere enn ikke, må du trekke data fra to eller flere tabeller for å svare på spørsmålet ditt. Anta for eksempel at du jobber for en sportsbutikk, og du vil sende en salgsfremmende epost til alle kundene som har kjøpt skiutstyr siden butikken åpnet i fjor.

Du trenger informasjon fra KUNDE-tabellen, PRODUKT-tabellen, INVOICE-tabellen og INVOICE_LINE-tabellen. Du kan opprette en flersidig visning som viser dataene du trenger. Hver gang du bruker visningen, gjenspeiler den eventuelle endringer som skjedde i de underliggende tabellene siden du sist brukte visningen.

Databasen for denne sportsbutikken inneholder fire tabeller: KUNDE, PRODUKT, FAKTUR, og INVOICE_LINE.

Tabell Kolonne Datatype Begrensning
KUNDE KundID INTEGER IKKE NULL
Fornavn CHAR (15)
LastName < CHAR (20) IKKE NULL Gate
CHAR (25) By
CHAR (20) Stat
CHAR (2) Postnummer > CHAR (10)
Telefon CHAR (13)
PRODUKT ProduktID
INTEGER IKKE NULL Navn CHAR (25)
Beskrivelse > CHAR (30) Kategori
CHAR (15) VendorID
INTEGER Leverandørnavn
CHAR (30) FAKTA
FakturaNumber INTEGER
IKKE NULL KundID INTEGER FakturaDate
DATO TotalSale
NUMERISK (9, 2) TotaltRemittert
NUMERISK (9, 2) FormOfPayment > CHAR (10)
INVOICE_LINE Linjenummer
INTEGER IKKE NULL
FakturaNumber INTEGER IKKE NULL ProductID
INTEGER IKKE NULL > Mengde INTEGER
Salgspris NUMERISK (9, 2) Merk at noen av kolonnene inneholder begrensningen IKKE NULL.Disse kolonnene er enten primærnøklene til de respektive tabellene eller kolonnene du bestemmer
inneholde en verdi. En tabellens primærnøkkel må unike identifisere hver rad. For å gjøre det må primærnøkkelen inneholde en ikke-null-verdi i hver rad.
Tabellene relaterer seg til hverandre gjennom de kolonnene de har til felles. Følgende liste beskriver disse forholdene: KUNDE-tabellen har et

ett til mange forhold i INVOICE-tabellen. En kunde kan gjøre flere kjøp, generere flere fakturaer. Hver faktura handler imidlertid med en, og kun en, kunde. INVOICE-tabellen har et til mange forhold til INVOICE_LINE-tabellen. En faktura kan ha flere linjer, men hver linje vises på en og kun én, faktura.

PRODUKT-tabellen har også en til mange forhold til INVOICE_LINE-tabellen. Et produkt kan vises på mer enn én linje på en eller flere fakturaer. Hver linje omhandler imidlertid ett, og bare ett, produkt.

  • KUNDE-tabellen kobler til INVOICE-tabellen ved den felles CustomerID-kolonnen. FAKTUR-tabellen kobler til INVOICE_LINE-tabellen med den vanlige kolonnen InvoiceNumber. PRODUKT-tabellen kobler til INVOICE_LINE-tabellen av den vanlige ProductID-kolonnen. Disse koblingene er det som gjør denne databasen til en relasjonell database.

  • For å få tilgang til informasjonen om kunder som kjøpte skiutstyr, trenger du Fornavn, Etternavn, Gate, By, Stat og Postnummer fra KUNDE-tabellen; Kategori fra PRODUKT-tabellen; FakturaNummer fra INVOICE-tabellen; og LineNumber fra INVOICE_LINE-tabellen. Du kan opprette visningen du vil ha i etapper ved å bruke følgende påstander:

  • CREATE VIEW SKI_CUST1 AS SELECT Fornavn, Etternavn, Gate, By, Stat, Postnummer, FakturaNUMMER FRA KUNDE TILBAKE FAKTUR BRUKER (CustomerID); CREATE VIEW SKI_CUST2 AS SELECT Fornavn, Etternavn, Gate, By, Stat, Postnummer, ProduktID FRA SKI_CUST1 BLI MED INVOICE_LINE BRUKER (FakturaNumber); CREATE VIEW SKI_CUST3 AS SELECT Fornavn, Etternavn, Gate, By, Stat, Postnummer, Kategori FRA SKI_CUST2 BLI MED PRODUKT BRUKER (ProductID); CREATE VIEW SKI_CUST AS SELECT DISTINCT Fornavn, Etternavn, Gate, By, Stat, Postnummer FRA SKI_CUST3 WHERE CATEGORY = 'Ski';

Disse CREATE VIEW-setningene kombinerer data fra flere tabeller ved hjelp av JOIN-operatøren. Her er en oversikt over de fire CREATE VIEW-setningene: Den første setningen kombinerer kolonner fra KUNDE-tabellen med en kolonne i INVOICE-tabellen for å lage SKI_CUST1-visningen.

Den andre setningen kombinerer SKI_CUST1 med en kolonne fra INVOICE_LINE-tabellen for å opprette SKI_CUST2-visningen.

Den tredje setningen kombinerer SKI_CUST2 med en kolonne fra PRODUCT-tabellen for å lage SKI_CUST3-visningen.

Den fjerde setningen filtrerer ut alle rader som ikke har en kategori av Ski. Resultatet er en visning (SKI_CUST) som inneholder navnene og adressene til alle kunder som kjøpte minst ett produkt i Ski-kategorien.

DISTINCT-søkeordet i den fjerde CREATE VIEW SELECT-klausulen sikrer at du kun har én oppføring for hver kunde, selv om enkelte kunder har gjort flere kjøp av skiartikler.

Hvordan du lager en tabellvisning med SQL-dummies

Redaktørens valg

Bygg et bloggnettverk fra din Mom Blog - dummies

Bygg et bloggnettverk fra din Mom Blog - dummies

Hvis du vil utvide bloggen din til en bloggnettverk, vil det ta en betydelig investering av tid og penger for å finne suksess med det. Flere aspekter ved å kjøre et bloggenettverk er ganske forskjellig fra å kjøre bare en blogg, hvorav det viktigste er Teknologiske utfordringer: Bygg og vedlikehold et sett ...

Burst Moms Network for Your Mom Blog - dummies

Burst Moms Network for Your Mom Blog - dummies

Burst Moms Network er en spesialitet divisjon av Burst Media, et av de eldste etablerte nettbaserte annonsenettverkene. Mens Burst har et minimumstrafikbehov, har det ikke satt vilkår og betingelser for alle utgivere som er med i nettverket. Burst jobber for å bygge en tilpasset annonseringsavtale med hver av sine utgivere til ...

Bygg en attraktiv Mom Blog Media Kit - dummies

Bygg en attraktiv Mom Blog Media Kit - dummies

Du kan lage ditt mediesett i et ordbehandlingsprogram eller presentasjonsprogramvare. Den beste måten å legge inn settet på bloggen din, er imidlertid å konvertere det til det nettvennlige PDF-formatet. Du kan laste ned en gratis PDF-maker fra CutePDF. Du trenger ikke å være en profesjonell designer for å sette sammen et godt utseende media ...

Redaktørens valg

Nettsted Handlinger-menyen i SharePoint 2010 - dummies

Nettsted Handlinger-menyen i SharePoint 2010 - dummies

Menyen Nettstedhandlinger er tilgjengelig for brukere som er medlemmer av nettstedet Medlemmer grupperer i SharePoint Server 2010. Medlemmer av gruppen Gruppesider og andre grupper som er begrenset til bare lisenser, kan ikke se menyen Nettstedhandlinger. Ingen individuell tillatelse er relatert til tilgang til menyen Nettstedhandlinger. I stedet for ...

Nettstedssamling Administrasjon i SharePoint 2013 - dummies

Nettstedssamling Administrasjon i SharePoint 2013 - dummies

En sidesamling er en container for flere nettsteder. SharePoint tillater organisasjoner å delegere ulike administrasjonsnivåer. For eksempel kan du være en administrator for nettstedet samling, og det kan være en administrator for hvert nettsted. Denne delegeringen av plikt er viktig for å avlaste arbeidet som kreves for å holde et stort antall nettsteder i gang.

SharePoint online innhold og innholdstyper - dummies

SharePoint online innhold og innholdstyper - dummies

En av de mange kule funksjonene SharePoint Online tilbyr, er muligheten for brukere for ikke bare å laste opp dokumenter, men også å opprette et nytt Word-dokument rett fra dokumentbiblioteket ved å klikke på Dokumenter fra biblioteksverktøyet på båndet og deretter klikke på Ny. Denne handlingen åpner et nytt blankt dokument i Microsoft ...

Redaktørens valg

Hvordan du lager PDF-presentasjoner fra Photoshop CS6-filer i Bridge-dummies

Hvordan du lager PDF-presentasjoner fra Photoshop CS6-filer i Bridge-dummies

I Bridge, du kan bruke den ultraeffektive PDF-generasjonsfunksjonen til å lage et enkelt flertallsdokument fra flere Photoshop CS6-bilder. Følg disse trinnene for å lage en PDF-presentasjon: Velg de ønskede bildene og velg Vindu → Arbeidsområde → Utgang. Du kan også velge Utgang fra snarveismenyen i arbeidsområdet i øverste høyre del av programvinduet. Endelig ...

Hvordan du oppretter smarte objekter og plasserer kunstverk i Photoshop CS6 - dummies

Hvordan du oppretter smarte objekter og plasserer kunstverk i Photoshop CS6 - dummies

Du kan lage en Smart objekt på noen måter ved hjelp av Photoshop Creative Suite 6. Du kan importere kunstverket via kommandoen Plasser. Du kan også kopiere og lime inn illustrasjonen fra Illustrator til Photoshop. Eller du kan konvertere et Photoshop-lag til et smart objekt. Endelig kan du opprette et smart objekt fra ...

Slik lager du snø og regn i Photoshop CS6 - dummies

Slik lager du snø og regn i Photoshop CS6 - dummies

Ved å bruke et par filtre og en blandingsmodus i Adobe Photoshop CS6, kan du legge til litt regn eller snø på noe bilde. Bare følg disse trinnene for å lage enten regn eller snø: Åpne et fargebilde. Hvis det ikke er i RGB-modus, velger du Bilde → Modus → RGB-farge. Kreditt: © iStockphoto. com / GomezDavid Image # 4372328 Pass på at du er ...