sql >> Database teknologi >  >> RDS >> Sqlserver

Ordliste over SQL Server-forespørgsler — A Stick Shift for DBA'er

Sammenligner du nogensinde dit arbejde med at slynge SQL som databaseadministrator med at skifte gear med en manuel gearkasse? I en verden, der for længe siden erobret af den grafiske brugergrænseflade (GUI), er SQL en af ​​de få tilbageværende måder for en databaseadministrator til at ro en skifter gennem computergearene og få rigtigt arbejde gjort.

Den forbindelse kan du som DBA være stolt af. Overvej dette for eksempel.

Skifte gear og skrive SQL Server-forespørgsler

Antag, at du er væk på college, og du skal finde et job. Så du kan spise og sådan noget. Du ser en annonce for en sandwich-maker i en delikatessebutik i byen, så du beslutter dig for at springe undervisningen over og ansøge. Du går hen til butikken og står i kø på fortovet bag de 19 andre mennesker, der sprang undervisningen over for at søge. Ansøgere bliver ved med at gå i arbejdsløshed og kommer ud uden arbejde.

"Det må være et hårdt interview," siger du til dig selv.

Endelig er det din tur til at gå ind. Ejeren af ​​smørrebrødsbutikken har én prioritet.

"Kan du køre en manuel gearkasse?" spørger hun.

Det havde du ikke forventet, vel? Men du har det rigtige svar på det rigtige tidspunkt.

"Jo da. Jeg lærte på en '99 Ford Explorer med fem på gulvet og en sprøjtende kobling. Gjorde alle ikke?”

"Nej," siger ejeren. "Du bliver nødt til at levere leveringer for os, og vores lastbil har en pind. Et spørgsmål mere:Hvilken slags kød er der i en kalkunsandwich?”

Du sømmer og laver et øjeblik - som vegetar - så tag et vildt gæt, der viser sig at være korrekt.

"Du har fået jobbet," siger ejeren. "Hvornår kan du begynde?"

Det kan have været touch-and-go med kødspørgsmålet, men din manuelle gearkasse-stamtavle tjente dig godt i delikatessen og fortsætter med at tjene dig godt som en hard-core, stick-skiftende DBA. Ikke for dig svirpningen af ​​en hjernedød PRNDL, der er ligeglad med, om din hånd er på den eller ej.

Det er glædeligt for dig at kunne åbne en SQL Server Management Studio-editor og slå nogle få T-SQL-kommandoer ind. På ingen tid kan du generere en stor liste over værdifuld information, der er trukket ud af en SQL Server-database et eller andet sted.

Ordliste over SQL Server-forespørgsler

Og som en DBA med respekt for sig selv, har du sikkert en håndfuld foretrukne SQL Server-forespørgsler, du har i baglommen. Tænk på dem som en ordliste over SQL Server-forespørgsler, som du trækker ud og trækker fra, når nogen har brug for specifikke data i en fart.

Kombinering af resultaterne af to SQL Server-forespørgsler til én

En dataanalytiker kommer gående ind på dit kontor med ild i håret og beder dig om en liste over kunder, deres e-mailadresser og deres seneste ordrer til en online kampagne, som virksomheden kører i morgen.

"Ikke bekymre dig," svarer du roligt. "Den vil være i din indbakke, når du kommer tilbage til dit skrivebord."

Du åbner et nyt vindue i din forespørgselseditor og skriver et par hurtige udsagn:

SELECT email FROM Customers UNION SELECT item FROM Orders

Du gemmer den nye tabel, e-mailer den til Hair-on-Fire og går tilbage til arbejdet.

Brug af jokertegn

LIKE søgeord, hvis det bruges omhyggeligt med jokertegn, er et formidabelt medlem af din ordliste. Plus, det kan give dig så meget resultat-bang for så lidt syntaks-penge. Med kun 47 tegn SQL kan du liste og undersøge alle rækkerne i en kundetabel for kunder, hvis efternavn begynder med "Rob", som vist her:

SELECT * From Customers WHERE Lastname LIKE 'Rob%'

Din resulterende liste vil omfatte Robbins, Roberts, Robertson, Robinson og så videre.

Skift værdier mellem kolonner i en tabel

Har du nogensinde importeret en database med 100.000 poster, og så indset, at du havde kortlagt felter forkert? Selvfølgelig ikke. Men data sker, og en af ​​dine kollegaer er forpligtet til at begå den fejl før eller siden.

Forestil dig, at felterne for postnummer og telefonnummer blev omsat under din import. I stedet for at kassere tabellen og køre importen igen, kan du bruge UPDATE og SET til at løse problemet:

UPDATE Customers SET Zip=Phone, Phone=Zip

Trækker kolonner fra en tabel

Selvfølgelig har du brug for et par SQL Server-forespørgsler i din baglomme, som du kan piske ud til de helt nybegyndere.

"Hvordan gør du, hvad du gør?" spørger de, deres stemme ryster af beundring.

"Prøv at starte med dette," siger du luftigt, og du viser dem omtrent den mest udbredte SQL Server-forespørgsel nogensinde:

SELECT Lastname FROM Customers;

Faktisk prøver de det i deres egen forespørgselseditor og udtrækker efternavnene på alle virksomhedens kunder.

For nogle nybegyndere kan det være tilstrækkeligt. Andre – whippersnapperne – kan smile og sige:"Er det alt, du har?" De skal vide, hvem de har at gøre med, så du tilføjer et jokertegn:

SELECT * FROM Orders;

Du vender derefter tilbage til dit skrivebord, efter at have tæppebombet dem med alle attributterne i tabellen og ladet dem finde ud af, hvad de skal gøre med så mange data.

Udlæser sorterede data i rækkefølge

Data går sjældent ind i en database i en nyttig rækkefølge, men de fleste brugere har brug for at se dem i enten alfabetisk eller numerisk rækkefølge. Med denne SQL Server-forespørgsel:

SELECT Emp_ID, Lastname FROM Employee WHERE City = 'Tulsa' ;

Du får en liste over medarbejder-id-numre og efternavne i Tulsa i den rækkefølge, de forekommer i tabellen. For en liste sorteret numerisk efter ID-nummer skal du køre denne SQL Server-forespørgsel:

VÆLG Emp_ID, Efternavn FRA medarbejder

WHERE By ='Tulsa' BESTIL EFTER Emp_ID;

Hvis du af en eller anden grund ønsker at angive dem i omvendt numerisk rækkefølge, skal du tilføje desc :

SELECT Emp_ID, Lastname FROM Employee WHERE City = 'Tulsa' ORDER BY Emp_ID desc;

Udlæsning af sorterede data i grupper

Udover sortering er gruppering en effektiv måde at manipulere data på. For at angive patientnavne og -aldre, grupperet efter år og sorteret efter navn inden for disse grupper, skal du strukturere din SQL Server-forespørgsel sådan:

SELECT Name, Age FROM Patients WHERE Age > 40 GROUP BY Age ORDER BY Name;

Sortering og gruppering gør livet meget lettere for dine dataanalytikere. Og SQL Server-forespørgslerne bag disse operationer er relativt enkle.

Opgiv ikke dit pindskifte

Disse er simple SQL Server-forespørgselseksempler, du kan opbevare i din egen ordliste. Mange DBA'er kan skrive deres egne yndlingsforespørgsler i søvne, de bruger dem så ofte.

Naturligvis er stokkeskift nærmest en truet art. Det bliver sværere at finde dem (og sværere at finde deli-medarbejdere, der ved, hvordan de skal køre dem). I en verden af ​​forsvindende manuelle transmissioner er det vigtigt for dig at holde fast i den, du har i din viden om SQL-forespørgsler. Begge kræver dygtighed og ikke en lille snedighed, og de adskiller dig fra folk, der ikke kan være generet med hele den kobling ud – Shift – Clutch in – Gas-ting.

Giv ikke dine stick shift og SQL Server-forespørgsler op, før du skal.


  1. Vil du slette en enkelt post fra Entity Framework?

  2. Sporing af høj tilgængelighed for PostgreSQL med hjerteslag

  3. Problem med Oracle-bindingsvariabler, der ikke bruger indekset korrekt

  4. Modellering af en åben markedsplads for uddannelse