Datenauswertung mit der SQL-Anweisung  SELECT


Im CISP-Programm haben wir unter dem Menu 'Statistik->SQL-Abrage' die Möglichkeit, die Daten der Patienten gezielt mit Befehlsanweisungen auszuwerten.


Allgemeines

Daten werden in einer Datenbank in Form von Tabellen gespeichert. Eine Beispieltabelle mit dem Namen patienten_cisp sieht wie folgt aus:

Tabelle: patienten_cisp
name vorname strasse ort
Muschter Felix Luchsweg Wetzikon
Behr Pascal Staustrasse Uster
Steiner Sandra Rainstrasse Zürich
Bertsmann Anna Im Riet Wetzikon


In einer Datenbank sind zahlreiche Tabellen, denen eindeutige Namen vergeben wurden.
Jede Tabelle hat Spalten, denen ebenfalls eindeutige Namen vergeben sind (in unserer Beispieltabelle: name, vorname, strasse, ort).

Um die Daten der Tabellen zu lesen, braucht es eine Sprache, mit der wir Abfragen formulieren können. Diese Sprache heisst SQL (Strucured Query Language) und wird fast überall im Zusammenhang mit Datenbanken gebraucht. Mit einer SQL-Anweisung an die Datenbank liefert uns diese ihre Daten wie gewünscht zurück. Eine SQL-Anweisung besteht aus Schlüsselwörtern der Sprache selbst, aus Platzhalterzeichen und aus den Namen der Tabellen und Spalten.


Allgemeine Syntaxregeln

Anwendung von SQL-Anweisungen mit dem Schlüsselwort SELECT

Im CISP-Programm erscheint nach Aufruf des Menus 'Statistik->SQL-Abrage' das Dialogfenster:


In der oberen Eingabezeile geben wir die SQL-Anweisung ein. Klicken Sie auf 'OK', damit die Anweisung an die Datenbank geschickt wird. Das untere Fenster gibt die Meldung der Datenbank zurück, falls wir eine fehlerhafte Anweisung geschickt haben. Um die Tabellennamen und deren Strukturen anzuzeigen, klicken Sie auf die Schaltfläche 'Tabellen anzeigen'.

ACHTUNG! Bitte wenden Sie keine Befehle wie DROP, UPDATE und solche an, die Daten löschen könnten! Die Anweisungen dieses kleinen Kurses, der sich auf die Anweisung mit SELECT beschränkt, können Sie bedenkenlos anwenden.

Unsere erste SQL-Anweisung auf unsere Beispieltabelle angewendet liefert die gesamte Tabellenstruktur mit allen Daten zurück:

SELECT  *  FROM  patienten_cisp ;

SELECT ist ein Schlüsselwort und heisst 'Wähle aus'.
Der Stern * ist ein Platzhalterzeichen und steht für 'Alle Spaltennamen'.
FROM ist ein Schlüsselwort und heisst 'von (der Tabelle)'.
'patienten_cisp' ist der Name der Tabelle.

Die SQL-Anweisung bedeutet übersetzt also: wähle die Daten aller Spalten der Tabelle patienten_cisp aus. Nach einem Mausklick auf 'OK' erscheint ein Fenster mit allen Daten der Tabelle patienten_cisp.

Um nur bestimmte Spalten auszuwählen, geben wir anstelle des Platzhalterzeichens * die Spaltennamen durch Komma getrennt in der Abfrage ein, z.B.:

SELECT name, vorname FROM patienten_cisp ;

Diese Abfrage liefert folgendes Ergebnis zurück:

MuschterFelix
BehrPascal
SteinerSandra
BertsmannAnna

Meistens möchten wir nicht nur gewisse Spalten anzeigen, sondern die Daten auch filtern und sortieren können. Auf einige Möglichkeiten werden wir uns hier beschränken. Ausführliche SQL-Kurse finden Sie auch im Internet, z.B. unter der Adresse:
http://www.dcs.ed.ac.uk/home/ajs/stuff/sql/sqltut.htm

Wenn wir Patienten mit bestimmten Namen herausfiltern möchten, wenden wir das Schlüsselwort 'WHERE' an, z.B.:

SELECT name, vorname FROM patienten_cisp WHERE name = 'Behr' ;

Diese Anweisung gibt nun nur den Namen und den Vornamen vom Patienten mit dem Namen Behr aus.

Möchten wir alle Patienten anzeigen, deren Namen mit 'Be beginnen, fürhren wir die Abfrage mit Platzhalterzeichen aus und benutzen das Schlüsselwort 'LIKE':

SELECT name, vorname FROM patienten_cisp WHERE name LIKE 'Be%' ;

Die Anweisung gibt uns bei unserer Beispieltabelle zwei Namen als Ergebnis zurück:

BehrPascal
BertsmannAnna

Das Schlüsselwort 'LIKE heisst dem Wort gemäss 'ähnlich'. Das Platzhalterzeichen % steht für beliebig viele unbekannte Buchstaben. Für nur einen unbekannten Buchstaben würde ein Unterstrich '_' als Platzhalterzeichen verwendet.

Fortsetzung folgt... wir bitten um etwas Geduld ...