1 / 8

SQL-Datentypen

SQL-Datentypen. 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));

felton
Download Presentation

SQL-Datentypen

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SQL-Datentypen

  2. DatenbeschreibungsspracheAnweisungen 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)); ALTERDatenstruktur ä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); DROPz.B. Tabelle löschen:drop table Artikel; DatenmanipulationsspracheAnweisungen 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ügeninsert into Kunden (Name,Geburtsdatum) values(“Ratlos“, #12/12/1982#); UPDATE Daten bearbeiten/aktualisierenLieschen 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öschenEinen Datensatz aus der Tabelle löschen:delete * from Kunden where K_Nr=5;Alle Daten in einer Tabelle löschen:delete * from Kunden; SQL

  3. 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:BETWEENSELECT Name, Vorname FROM Kunden WHERE KNr BETWEEN 5 and 10;(SELECT Name, Vorname FROM Kunden WHERE KNr>=5 and KNr<=10);INSELECT Name, Vorname FROM Kunden WHERE KNr IN(12,21,15);(SELECT Name, Vorname FROM Kunden WHERE KNr=12 or KNr=21 or KNr=15;)LIKESELECT Name, Vorname FROM Kunden WHERE Name LIKE „B*“;SELECT Name, Vorname,Geburtsdatum FROM Kunden WHERE Geburtsdatum LIKE „*.12.*“;(Alle im Juni geborenen Kunden) SQL

  4. 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 sortierenBeispiele: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; SQL

  5. SQL - Gruppenfunktionen • Lassen Sie die Anzahl der in der gleichnamigen Tabelle gespeicherten Teilnehmer ermitteln. Feldname für die Ausgabe: TeilnehmerzahlSELECT Count(*) AS Teilnehmerzahl FROM Teilnehmer; • Ermitteln Sie die Anzahl der Teilnehmer aus dem PLZ-Bezirk 84. Feldname PLZ84SELECT Count(*) AS PLZ84 FROM Teilnehmer WHERE PLZ like "84*"; • Ermitteln Sie den durchschnittlichenUESatz in der Tabelle Dozent. Feldname: UESatzMittelSELECT Avg(UESatz) AS UESatzMittel FROM Dozent; • Ermitteln Sie die Gesamtdauer aller Lehrgänge in der Tabelle Inhalt. Feldname: LehrgangsdauerSELECT Sum(DauerUE) AS Lehrgangsdauer FROM Inhalt; • Ermitteln Sie die höchste und die kürzeste Lehrgangsdauer. Feldnamen: MaxDauer, MinDauerSELECT Max(DauerUE) AS MaxDauer, Min(DauerUE) AS MinDauer FROM Inhalt; Übungsdatenbank Lehrgänge

  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 AnzahlSELECT 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 RechnungsbetragFROM 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 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 OrtenSELECT Ort, count(*) AS Anzahl, sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter GROUP BY ort; • Orte, Summe der Mietkosten, gruppiert nach Orten, jedoch ohne BerlinSELECT Ort, sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter WHERE ort<>"Berlin“ GROUP BY ort ORDER BY ort;oderSELECT Ort, sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter GROUP BY ort HAVING ort<>"Berlin“ ORDER BY ort; Übungsdatenbank Mieter

  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;oderSELECT 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 wohnenSELECT ort, sum(Mietkosten) AS Gesamtmietkosten FROM Mieter_Vermieter GROUP BY ort HAVING count(*)>=2 and sum(Mietkosten)<=-200;

More Related