Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

SQL-Datentypen INTEGER

Ähnliche Präsentationen


Präsentation zum Thema: "SQL-Datentypen INTEGER"—  Präsentation transkript:

1 SQL-Datentypen INTEGER
Ganze Zahlen (4 Byte  ) CHAR(n) TEXT(n) TEXT Zeichenkette mit max. n Zeichen (n<=255) LONG INTEGER Ganze Zahlen (4 Byte) DATE Datum (tttt.MM.jjjj) BYTE Ganze Zahlen (1 Byte  0…255) TIME Uhrzeit (hh:mm:ss) COUNTER Ganze Zahlen (4 Byte)  Autowert DATETIME Datum/Uhrzeit (Datum + Uhrzeit –Format) CURRENCY Währung (8 Byte) BOOLEAN „Ja-Nein“ SINGLE Rationale Zahlen ( 4 Byte, , Genauigkeit bis 7 Stellen) LONGTEXT Memo  größer 255 Zeichen DOUBLE Rationale Zahlen (8 Byte, , Genauigkeit bis 15 Stellen)

2 SQL Datenbeschreibungssprache Anweisungen zur Bearbeitung der Datenbankstruktur CREATE z.B. Tabelle erstellen: create table Kunden(K_Nr counter,Name text(30) NOT NULL,Vorname text(30),Geburtsdatum date,Primary Key(K_Nr)); ALTER Datenstruktur ändern, z.B.: Spalte einfügen: alter table Kunden add column PLZ integer; Datentyp ändern: alter table Kunden alter PLZ text(5); Spalte als Primärschlüssel deklarieren: alter table Artikel add Primary Key (Art_Nr); DROP z.B. Tabelle löschen: drop table Artikel; Datenmanipulationssprache Anweisungen zum Einfügen und Bearbeiten der Daten INSERT Daten einfügen -vollständigen Datensatz einfügen: insert into Kunden values(5,“Fleißig“,“Lieschen“,,#13/03/1980#); -einzelne Felder einfügen insert into Kunden (Name,Geburtsdatum) values(“Ratlos“, #12/12/1982#); UPDATE Daten bearbeiten/aktualisieren Lieschen heiratet und ändert ihren Nachnamen: update kunden set Name=„Müller“ where K_Nr=5; Preiserhöhung für alle Artikel um 1% update artikel set Preis=Preis*1.01; DELETE Daten löschen Einen Datensatz aus der Tabelle löschen: delete * from Kunden where K_Nr=5; Alle Daten in einer Tabelle löschen: delete * from Kunden;

3 SQL SELECT Feld(er) FROM Tabelle(n) WHERE Kriterien ______ =optional
Erstellen von Auswahlabfragen Auswahl von Datenfeldern aus 1 oder mehreren Tabellen; Auswahl von Datensätzen SELECT Feld(er) FROM Tabelle(n) WHERE Kriterien ______ =optional Einfache Beispiele: SELECT * FROM Kunden; SELECT Name, Vorname FROM Kunden; SELECT Name, Vorname FROM Kunden WHERE KNr=5; Operatoren: BETWEEN SELECT Name, Vorname FROM Kunden WHERE KNr BETWEEN 5 and 10; (SELECT Name, Vorname FROM Kunden WHERE KNr>=5 and KNr<=10); IN SELECT Name, Vorname FROM Kunden WHERE KNr IN(12,21,15); (SELECT Name, Vorname FROM Kunden WHERE KNr=12 or KNr=21 or KNr=15;) LIKE SELECT Name, Vorname FROM Kunden WHERE Name LIKE „B*“; SELECT Name, Vorname,Geburtsdatum FROM Kunden WHERE Geburtsdatum LIKE „*.12.*“; (Alle im Juni geborenen Kunden)

4 SQL Abfragen mit mehreren Tabellen SELECT Name, Vorname,Abteilung FROM Kunden,Abteilung WHERE Kunden.AbtNr=Abteilung.AbtNr; (Kunden.AbtNr=Abteilung.AbtNr  Verknüpfung zwischen Primär- und Fremdschlüsselfeld herstellen) SELECT Name, Vorname,Abteilung.AbtNr,Abteilung FROM Kunden,Abteilung WHERE Kunden.AbtNr=Abteilung.AbtNr; (Bei Feldern, die in mehreren Tabellen vorkommen, Tabelle angeben, aus der das Feld angezeigt werden soll) Daten sortieren: ORDER BY Kriterium ASC aufsteigend sortieren (Standard) ORDER BY Kriterium DESC absteigend sortieren Beispiele: SELECT * FROM Kunden ORDER BY Name; SELECT Name, Vorname FROM Kunden WHERE KNr IN(12,21,15) ORDER BY Name DESC; SELECT Name, Vorname,Abteilung FROM Kunden,Abteilung WHERE Kunden.AbtNr=Abteilung.AbtNr ORDER BY Abteilung.AbtNr;

5 SQL - Gruppenfunktionen
COUNT(*) Anzahl der Datensätze AVG Mittelwert MAX Maximaler Wert MIN Minimaler Wert SUM Summe Übungsdatenbank Lehrgänge Lassen Sie die Anzahl der in der gleichnamigen Tabelle gespeicherten Teilnehmer ermitteln. Feldname für die Ausgabe: Teilnehmerzahl SELECT Count(*) AS Teilnehmerzahl FROM Teilnehmer; Ermitteln Sie die Anzahl der Teilnehmer aus dem PLZ-Bezirk 84. Feldname PLZ84 SELECT Count(*) AS PLZ84 FROM Teilnehmer WHERE PLZ like "84*"; Ermitteln Sie den durchschnittlichen UESatz in der Tabelle Dozent. Feldname: UESatzMittel SELECT Avg(UESatz) AS UESatzMittel FROM Dozent; Ermitteln Sie die Gesamtdauer aller Lehrgänge in der Tabelle Inhalt. Feldname: Lehrgangsdauer SELECT Sum(DauerUE) AS Lehrgangsdauer FROM Inhalt; Ermitteln Sie die höchste und die kürzeste Lehrgangsdauer. Feldnamen: MaxDauer, MinDauer SELECT Max(DauerUE) AS MaxDauer, Min(DauerUE) AS MinDauer FROM Inhalt;

6 SQL - Gruppenfunktionen
GROUP BY fasst alle Datensätze, die in einem Feld gleiche Werte enthalten (z.B. ORT), zu einem Datensatz zusammen. Mit COUNT, SUM, usw.…kann dann ein zusammenfassender Wert für diesen Datensatz berechnet werden. Mit Hilfe der Tabellen Teilnehmer und Ort soll ermittelt werden, wie viele Teilnehmer aus den jeweiligen Orten stammen. Angabe der Felder Ort und Anzahl SELECT Ort.Ort, Count(*) AS Anzahl FROM Teilnehmer, Ort WHERE Ort.PLZ=Teilnehmer.PLZ GROUP BY Ort; Für den Dozenten Heider soll ermittelt werden, welchen Rechnungsbetrag er aus den von ihm durchgeführten Lehrgängen erzielt. (Lehrgangsdauer gespeichert in Tabelle Inhalt; Satz für eine Unterrichtseinheit gespeichert in Tabelle Dozent) SELECT Name, sum(DauerUE*UESatz) AS Rechnungsbetrag FROM Lehrgang, Inhalt, Dozent WHERE Name="Heidert" AND Lehrgang.INR=Inhalt.INR AND Dozent.DNR=Lehrgang.DNR GROUP BY Name;

7 SQL - Gruppenfunktionen
Die Anzahl der Datensätze kann mit HAVING und einer Bedingung weiter eingeschränkt werden. Die HAVING-Klausel folgt dabei immer dem GROUP BY-Konstrukt Übungsdatenbank Mieter Es sollen angezeigt werden: Orte und Summe der Mietkosten, gruppiert und sortiert nach Orten: SELECT Ort, Sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter GROUP BY Ort ORDER BY Ort; Orte, Anzahl der Mieter, Gesamtmietkosten, gruppiert nach Orten SELECT Ort, count(*) AS Anzahl, sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter GROUP BY ort; Orte, Summe der Mietkosten, gruppiert nach Orten, jedoch ohne Berlin SELECT Ort, sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter WHERE ort<>"Berlin“ GROUP BY ort ORDER BY ort; oder SELECT Ort, sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter GROUP BY ort HAVING ort<>"Berlin“ ORDER BY ort;

8 SQL - Gruppenfunktionen
Orte, Gesamtmietkosten, jedoch ohne Hamburg; eine Gruppe soll nur dann erscheinen, wenn die Gesamtmietkosten nicht negativ sind. SELECT Ort, sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter WHERE ort<>"Hamburg“ GROUP BY ort HAVING sum(Mietkosten)>=0; oder SELECT Ort, sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter GROUP BY ort HAVING sum(Mietkosten)>=0 and ort<>"Hamburg“ Orte, Anzahl der Mieter und Gesamtmietkosten, gruppiert nach Orten. Es sollen nur die Orte enthalten sein, in denen mehr als zwei Mieter wohnen. SELECT Ort, count(*) AS Anzahl, sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter GROUP BY ort HAVING count(*)>2; Summe der Gesamtmietkosten bis maximal -200,00 € jener Orte, in denen mindestens zwei Mieter wohnen SELECT ort, sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter GROUP BY ort HAVING count(*)>=2 and sum(Mietkosten)<=-200;


Herunterladen ppt "SQL-Datentypen INTEGER"

Ähnliche Präsentationen


Google-Anzeigen