SQL für SAS-Programmierer - Einführung
12. April 2009 von: Blink 7Was ist SQL?
SQL steht für Structured Query Language und wurde für die Entwicklung und Wartung in einem Datenbank-Managementsystem (DBMS) entwickelt. Ein DBMS besteht aus einer oder mehreren Tabellen von Daten, die typischerweise in einer hierarchischen Weise verbunden, und eine Reihe von Programmen für die Organisation der Daten.
Typische Aufgaben, die mit SQL-Code ausgeführt gehören die folgenden:
- Rufen Sie (oder Abfrage) Daten aus einer oder mehreren Tabellen
- Bearbeiten von Daten in bestehenden Tabellen
- Definieren Sie neue Tabellen erstellen und Daten in neue Tabelle
- Alter vorhandenen Tabelle Definitionen
- Festlegen von Berechtigungen für verschiedene Benutzer den Zugriff auf vorhandene Tabellen
Die ursprüngliche Implementierung von SQL wurde von IBM entwickelt, um Daten in seinem System zu manipulieren R. Während die Sprache seit standardisiert wurde von ANSI und ISO, die meisten großen DBMS zu verlängern Abfrage von SQL-basierten Syntax, um prozedurale Sprache sind Konstrukte wie bedingte Anweisungen und variable Lagerung . Die Erweiterungen sind in der Regel spezifisch auf die DBMS, die sich in mehreren Sub-Sprachen, wie PL / SQL (Oracle) und T-SQL (Microsoft SQL Server).
SAS implementiert SQL mit den PROC SQL-Anweisung. PROC SQL kann als eine Alternative zu den Daten Schritt für die Erstellung und Bearbeitung von Datensätzen, wobei jeder SAS-Datensatz wird als Tabelle behandelt werden. Die meisten der verfügbaren Befehle innerhalb der Daten Schritt in PROC SQL verwendet werden, während die Anweisung kann zur Makro-Variablen und die Bildschirmausgabe zu kontrollieren.
Warum lernen, wenn SQL SAS hat die Daten Schritt?
Die meisten SAS-Programmierer bereits vertraut sind mit dem DATA-Schritt - wohl die wichtigste Aussage in der SAS-Sprache. Also, warum lernen eine andere Aussage, dass die gleichen Aufgaben erfüllt? SQL bietet viele Vorteile gegenüber dem DATA-Schritt-Anweisungen und andere, darunter die folgenden:
- Interoperabilität. PROC SQL kann verwendet werden, um Daten direkt aus Quellen, die sonst nicht zugänglich wären, um die Daten Schritt abzurufen. Zum Beispiel kann der Treiber von Oracle PIPE PROC SQL verwendet werden, um Problem-Pass-Through-Anweisungen direkt zu einer Oracle-Datenbank (über Oracle SQL-Syntax) und die Ergebnisse abrufen, die SAS-Umgebung.
- Hochleistungs-Data Fusion Einrichtungen. Die SQL-Programmiersprache erfordert keine Datensätze vor Verschmelzung sortiert werden. Die Syntax für die Durchführung der verschiedenen verschmilzt (Inner Join, Outer Join, Left Join, Right Join) ist relativ einfach, im Vergleich zu den Daten Schritt
- Vereinfachte Berichterstattung. Eine einzelne SQL-Anweisung können Daten von einem oder mehreren Datensätze abzurufen, eine Zusammenfassung der Daten und Ausgabe der Ergebnisse auf dem Bildschirm. Um die gleiche Aufgabe wäre zumindest ein Schritt DATA und PROC PRINT-Anweisung erforderlich ist.
Ob PROC SQL ist höher als die Daten Schritt oder vice-versa ist eine religiöse Debatte tobt, auch bei SAS Ausbilder während der Ausbildung Klassen. In der Praxis habe ich festgestellt, dass jede Aussage zeichnet sich in verschiedenen Situationen und dass die meisten komplexen Vorhaben, die häufige Verwendung von beiden.
Welche potenziellen Vorteile können SQL-Code für die SAS-Universum zu gewährleisten?
Die PROC SQL-Befehl bietet einen einfachen Einstieg für die große Anzahl von SQL-Programmierer, die mit SAS nicht vertraut sind. Während SAS im Allgemeinen als ein statistisches Werkzeug verwendet wird, gibt es oft sehr leistungsfähige Einrichtungen, die SAS eine attraktive Plattform für andere Datenbank-Anwendungen wie ETL-und Main-Frame Processing machen würde.
Auch beim Erlernen von SQL kann die SAS-Programmierer nur durch die Einführung einer Sprache, die fast immer in der Nachfrage außerhalb der SAS-Universum und für die Arbeitsplätze sind leicht zugänglich zu profitieren. Obwohl eine genaue SQL-Implementierungen zwischen den verschiedenen Datenbanken unterscheiden, weiterhin den Kern-Befehle in fast allen Datenbanken konsistent.
Das Projekt
Das folgende Tutorial wird generierten Daten für einen fiktiven Elektronik-Geschäft stützen. Die wichtigsten Daten setzen / Tabelle besteht aus 10 Tagen von Bewegungsdaten mit den folgenden Informationen:
- Eindeutige Transaktions-ID
- Datum der Transaktion
- ID der Arbeitnehmer, der aus dem Verkauf
- Zahlungsweise
- Transaktionsbetrag
Einklang mit DBMS empfohlenen Praktiken, Mitarbeiter-und Zahlungsart Informationen finden Sie in der Transaktion Tabellen gespeichert numerische ID's. Zwei weitere Referenz-Tabellen erstellt wurden, um zusätzliche Informationen über jeden Mitarbeiter und Art der Bezahlung.
Tutorial Index
Die SAS PROC SQL-Tutorial besteht aus den folgenden Abschnitten --
Teil 1 - Extrahieren von Daten
Teil 2 - Bearbeiten von Daten (coming soon!)
Teil 3 - die Kombination von Daten (coming soon!)
Teil 4 - Advanced Techniques (coming soon!)








