Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Glossar der SQL Server-Abfragen – Ein Hebel für DBAs

Vergleichen Sie Ihre Arbeit mit SQL als Datenbankadministrator manchmal mit dem Gangwechsel bei einem Schaltgetriebe? In einer Welt, die vor langer Zeit von der grafischen Benutzeroberfläche (GUI) erobert wurde, ist SQL eine der wenigen verbleibenden Möglichkeiten für einen Datenbankadministrator, um durch die Computer-Gänge zu rudern und echte Arbeit zu erledigen.

Als DBA können Sie stolz auf diese Verbindung sein. Betrachten Sie zum Beispiel dies.

Gang schalten und SQL Server-Abfragen schreiben

Angenommen, Sie sind auf dem College und müssen einen Job finden. Sie können also essen und so. Sie sehen eine Anzeige für einen Sandwichmaker in einem Feinkostgeschäft in der Stadt, also beschließen Sie, den Unterricht zu überspringen und sich zu bewerben. Du gehst zum Geschäft und stellst dich auf dem Bürgersteig hinter den 19 anderen Leuten an, die den Unterricht geschwänzt haben, um sich zu bewerben. Bewerber gehen arbeitslos rein und wieder arbeitslos wieder raus.

„Muss ein hartes Vorstellungsgespräch werden“, sagst du dir.

Zum Schluss sind Sie an der Reihe, hineinzugehen. Der Besitzer des Sandwichladens hat eine Priorität.

„Können Sie Schaltgetriebe fahren?“ fragt sie.

Damit hast du nicht gerechnet, oder? Aber Sie haben die richtige Antwort zur richtigen Zeit.

"Sicher. Ich habe auf einem 99er Ford Explorer mit fünf auf dem Boden und einer spritzigen Kupplung gelernt. Hat das nicht jeder?«

„Nein“, sagt der Besitzer. „Sie müssen Lieferungen für uns erledigen, und unser Lastwagen hat einen Stock. Noch eine Frage:Welche Art von Fleisch passt in ein Truthahnsandwich?“

Du räusperst dich für eine Minute – als Vegetarier – und stellst dann eine wilde Vermutung an, die sich als richtig herausstellt.

„Du hast den Job“, sagt der Besitzer. „Wann können Sie anfangen?“

Bei der Fleischfrage war es vielleicht ein ziemliches Problem, aber Ihr Stammbaum mit manuellem Getriebe hat Ihnen im Feinkostladen gute Dienste geleistet und leistet Ihnen weiterhin gute Dienste als hartgesottener DBA mit Schalthebeln. Nicht für dich das Schnippen eines hirntoten PRNDL, dem es egal ist, ob deine Hand darauf liegt oder nicht.

Es freut Sie, einen SQL Server Management Studio-Editor öffnen und ein paar T-SQL-Befehle einhämmern zu können. In kürzester Zeit können Sie eine große Liste wertvoller Informationen generieren, die irgendwo aus den Eingeweiden einer SQL Server-Datenbank gezogen werden.

Glossar der SQL Server-Abfragen

Und als DBA mit Selbstachtung haben Sie wahrscheinlich eine Handvoll bevorzugter SQL Server-Abfragen in Ihrer Hosentasche. Betrachten Sie sie als ein Glossar von SQL Server-Abfragen, die Sie herausziehen und daraus schöpfen, wenn jemand bestimmte Daten in Eile benötigt.

Kombinieren der Ergebnisse von zwei SQL Server-Abfragen zu einer

Ein Datenanalyst kommt mit brennenden Haaren in Ihr Büro gesprungen und bittet Sie um eine Liste mit Kunden, ihren E-Mail-Adressen und ihren letzten Bestellungen für eine Online-Werbeaktion, die das Unternehmen morgen durchführt.

„Keine Sorge“, antwortest du ruhig. "Es wird in Ihrem Posteingang sein, wenn Sie an Ihren Schreibtisch zurückkehren."

Sie öffnen ein neues Fenster in Ihrem Abfrage-Editor und geben ein paar schnelle Anweisungen ein:

SELECT email FROM Customers UNION SELECT item FROM Orders

Sie speichern die neue Tabelle, senden sie per E-Mail an Hair-on-Fire und machen sich wieder an die Arbeit.

Platzhalter verwenden

Das LIKE Schlüsselwort, wenn es vorsichtig mit Platzhaltern verwendet wird, ist ein beeindruckendes Mitglied Ihres Glossars. Außerdem kann es Ihnen so viele Ergebnisse liefern – für so wenig Syntax-Buck. Mit nur 47 SQL-Zeichen können Sie alle Zeilen in einer Customers-Tabelle nach Kunden auflisten und untersuchen, deren Nachname mit „Rob“ beginnt, wie hier gezeigt:

SELECT * From Customers WHERE Lastname LIKE 'Rob%'

Ihre resultierende Liste enthält Robbins, Roberts, Robertson, Robinson und so weiter.

Werte zwischen Spalten in einer Tabelle austauschen

Haben Sie jemals eine Datenbank mit 100.000 Datensätzen importiert und dann festgestellt, dass Sie Felder falsch zugeordnet hatten? Natürlich nicht. Aber Daten passieren, und früher oder später wird einer Ihrer Kollegen diesen Fehler machen.

Stellen Sie sich vor, die Felder für Postleitzahl und Telefonnummer wurden während Ihres Importvorgangs vertauscht. Anstatt die Tabelle zu löschen und den Import erneut auszuführen, könnten Sie UPDATE und SET verwenden, um das Problem zu beheben:

UPDATE Customers SET Zip=Phone, Phone=Zip

Spalten aus einer Tabelle ziehen

Natürlich brauchen Sie ein paar SQL Server-Abfragen in Ihrer Gesäßtasche, die Sie für die absoluten Neulinge hervorholen können.

„Wie tust du, was du tust?“ fragen sie, ihre Stimme zittert vor Bewunderung.

„Versuchen Sie, damit zu beginnen“, sagen Sie leichthin und zeigen ihnen so ziemlich die am weitesten verbreitete SQL Server-Abfrage aller Zeiten:

SELECT Lastname FROM Customers;

Tatsächlich versuchen sie es in ihrem eigenen Abfrageeditor und extrahieren die Nachnamen aller Kunden des Unternehmens.

Für einige Neulinge mag das ausreichen. Andere – die Whippersnapper – können grinsen und sagen:„Ist das alles, was du hast?“ Sie müssen wissen, mit wem sie es zu tun haben, also fügen Sie einen Platzhalter hinzu:

SELECT * FROM Orders;

Sie kehren dann zu Ihrem Schreibtisch zurück, nachdem Sie sie mit allen Attributen in der Tabelle bombardiert und ihnen überlassen haben, herauszufinden, was sie mit so vielen Daten anfangen sollen.

Sortierte Daten der Reihe nach ausgeben

Daten gehen selten in einer sinnvollen Reihenfolge in eine Datenbank, aber die meisten Benutzer müssen sie entweder in alphabetischer oder numerischer Reihenfolge aufgelistet sehen. Mit dieser SQL Server-Abfrage:

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

Sie erhalten eine Liste der Mitarbeiter-ID-Nummern und Nachnamen in Tulsa in der Reihenfolge, in der sie in der Tabelle vorkommen. Führen Sie für eine numerisch nach ID-Nummer sortierte Liste diese SQL Server-Abfrage aus:

SELECT Emp_ID, Nachname VON Mitarbeiter

WHERE Stadt ='Tulsa' ORDER BY Emp_ID;

Wenn Sie sie aus irgendeinem Grund in umgekehrter numerischer Reihenfolge auflisten möchten, fügen Sie desc hinzu :

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

Sortierte Daten in Gruppen ausgeben

Neben dem Sortieren ist das Gruppieren eine leistungsstarke Möglichkeit, Daten zu manipulieren. Um Patientennamen und -alter aufzulisten, nach Altersgruppen gruppiert und innerhalb dieser Gruppen nach Namen sortiert, strukturieren Sie Ihre SQL Server-Abfrage wie folgt:

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

Das Sortieren und Gruppieren erleichtert Ihren Datenanalysten das Leben erheblich. Und die SQL Server-Abfragen hinter diesen Operationen sind relativ einfach.

Gib deinen Schaltknüppel nicht auf

Dies sind einfache SQL Server-Abfragebeispiele, die Sie in Ihrem eigenen Glossar aufbewahren können. Viele DBAs können ihre eigenen bevorzugten Abfragen im Schlaf schreiben, da sie sie so häufig verwenden.

Natürlich sind Schaltknüppel fast eine vom Aussterben bedrohte Art. Es wird schwieriger, sie zu finden (und schwieriger, Feinkostmitarbeiter zu finden, die wissen, wie man sie fährt). In einer Welt, in der manuelle Getriebe verschwinden, ist es wichtig, dass Sie an Ihrem Wissen über SQL-Abfragen festhalten. Beides erfordert Geschick und ein wenig List, und sie heben Sie von Leuten ab, die sich nicht mit diesem ganzen Kupplung raus – Schalten – Kupplung rein – Gas-Ding beschäftigen können.

Geben Sie Ihre Stick-Shift- und SQL-Server-Abfragen nicht auf, bis Sie müssen.