PORTO-
FREI

Einstieg in SQL

Für alle wichtigen Datenbanksysteme: MySQL, PostgreSQL, MariaDB, MS SQL. Über 600 Seiten. Ohne Vorwissen einsteigen

von Laube, Michael   (Autor)

Den leichten Einstieg in SQL und die Datenmodellierung finden Sie hier! Schritt für Schritt führt Sie dieser Leitfaden durch den SQL-Befehlsschatz und macht Sie mit allen wichtigen Befehlen vertraut. Das Beherrschen der SQL-Befehle ist jedoch nur das Fundament. Darauf aufbauend lernen Sie, wie Sie Ihre Daten richtig modellieren, verknüpfen und bearbeiten. So schaffen Sie Ordnung und sorgen für performante Abfragen. Aus dem Inhalt: * Grundlagen kennenlernen und verstehen * Grundfunktionen der Tabellenabfrage * Zeilen einfügen, ändern und löschen (INSERT, UPDATE und DELETE) * Tabellen mit CREATE TABLE anlegen * Mengenoperationen * Datenbanken modellieren * Datenmodelle optimieren * Datenmodelle in Tabellen überführen * Beziehungen zwischen Tabellen: JOINs * Transaktionen * Skalarfunktionen * Bedingungslogik * Mit Zeit und Datum arbeiten * Spaltenwerte mit GROUP BY gruppieren * Unterabfragen * VIEWS: Abfragen in virtuellen Tabellen speichern * Performance optimieren

Buch (Gebunden)

EUR 29,90

Alle Preisangaben inkl. MwSt.

Auch verfügbar als:

SOFORT LIEFERBAR (am Lager)

Versandkostenfrei*

Versandtermin: 28. September 2021, wenn Sie jetzt bestellen.
(innerhalb Deutschlands, Sendungen in Geschenkverpackung: + 1 Werktag)

 
 

Produktbeschreibung

Den leichten Einstieg in SQL und die Datenmodellierung finden Sie hier! Schritt für Schritt führt Sie dieser Leitfaden durch den SQL-Befehlsschatz und macht Sie mit allen wichtigen Befehlen vertraut. Das Beherrschen der SQL-Befehle ist jedoch nur das Fundament. Darauf aufbauend lernen Sie, wie Sie Ihre Daten richtig modellieren, verknüpfen und bearbeiten. So schaffen Sie Ordnung und sorgen für performante Abfragen.

Aus dem Inhalt:

* Grundlagen kennenlernen und verstehen

* Grundfunktionen der Tabellenabfrage

* Zeilen einfügen, ändern und löschen (INSERT, UPDATE und DELETE)

* Tabellen mit CREATE TABLE anlegen

* Mengenoperationen

* Datenbanken modellieren

* Datenmodelle optimieren

* Datenmodelle in Tabellen überführen

* Beziehungen zwischen Tabellen: JOINs

* Transaktionen

* Skalarfunktionen

* Bedingungslogik

* Mit Zeit und Datum arbeiten

* Spaltenwerte mit GROUP BY gruppieren

* Unterabfragen

* VIEWS: Abfragen in virtuellen Tabellen speichern

* Performance optimieren 

Inhaltsverzeichnis

Materialien zum Buch ... 17




1. Grundlagen kennenlernen und verstehen ... 19



1.1 ... Die Tabelle als zentrales Element ... 19


1.2 ... Eine kleine Historie von SQL ... 21


1.3 ... Datenbanksysteme ... 22


1.4 ... SQL -- ein Standard und seine Umsetzung ... 23


1.5 ... Zu diesem Buch ... 24


1.6 ... MySQL unter Windows installieren ... 26


1.7 ... Die MySQL-Übungsdatenbank anlegen ... 34


1.8 ... Eine erste Abfrage an die Datenbank senden ... 38


1.9 ... Kommentarfunktion ... 41





2. Los geht's: Die Grundfunktionen der Tabellenabfrage (SELECT) ... 45



2.1 ... Mit einer SELECT-Anweisung Tabellen abfragen ... 45


2.2 ... Zeilen in einer Abfrage mit WHERE filtern ... 49


2.3 ... Filterbedingungen mit AND (NOT) und OR (NOT) logisch verknüpfen ... 88


2.4 ... Ergebniszeilen einer SELECT-Anweisung einschränken ... 106


2.5 ... Datensätze sortiert abfragen ... 109


2.6 ... Konstanten in die Spaltenauswahlliste aufnehmen ... 121


2.7 ... Spalten einen Alias zuordnen ... 124


2.8 ... Gleiche Ergebniszeilen ausschließen (DISTINCT) ... 128





3. Zeilen einfügen (INSERT), ändern (UPDATE) und löschen (DELETE, TRUNCATE) ...
133



3.1 ... Zeilen mit einer INSERT-Anweisung einfügen ... 133


3.2 ... Zeilen mit einer UPDATE-Anweisung ändern ... 143


3.3 ... Zeilen mit einer DELETE-Anweisung löschen ... 154


3.4 ... Alle Zeilen einer Tabelle mit einer TRUNCATE-Anweisung löschen ... 158





4. Tabellen anlegen (CREATE TABLE) ... 161



4.1 ... Datentypen ... 161


4.2 ... Datentypen umwandeln ... 174


4.3 ... Explizite und implizite Typkonvertierung ... 175


4.4 ... Einfache Tabellen mit CREATE TABLE erstellen ... 182


4.5 ... Spalten Einschränkungen (CONSTRAINTS) zuordnen ... 195


4.6 ... Spalten auf Tabellenebene Einschränkungen (CONSTRAINT) zuordnen ... 209





5. Mengenoperationen anwenden ... 223



5.1 ... Mengenoperationen auf Ergebnistabellen anwenden ... 223


5.2 ... Funktionsweise von Mengenoperationen mit UNION ... 230


5.3 ... Die Schnittmenge von Ergebnistabellen bilden (INTERSECT) ... 238


5.4 ... Eine Differenzmenge aus Ergebnistabellen bilden (EXCEPT) ... 241


5.5 ... Mengenoperationen in Kombination mit einer WHERE-Klausel verwenden ...
243


5.6 ... Vereinigungsmengen in Kombination mit einer ORDER BY-Klausel ... 246





6. Benutzer, Rollen und ihre Berechtigungen ... 249



6.1 ... Benutzer anlegen (CREATE USER) ... 250


6.2 ... Benutzer entfernen ... 251


6.3 ... Eine Verbindung für einen Datenbankbenutzer erstellen ... 252


6.4 ... Berechtigungen verwalten ... 256


6.5 ... Mit Rollen Berechtigungen zuordnen ... 258


6.6 ... Übungen ... 262





7. Datenbanken modellieren ... 267



7.1 ... Anforderungskatalog ... 267


7.2 ... Entitäten identifizieren und modellhaft abbilden ... 268


7.3 ... Beziehungen zwischen Entitäten festlegen ... 275


7.4 ... Datenmodelle in der UML-Notation darstellen ... 289


7.5 ... Übungen ... 292





8. Datenmodelle optimieren (Normalisierung) ... 295



8.1 ... Redundanzen erkennen ... 295


8.2 ... Die 1. Normalform anwenden ... 298


8.3 ... Die 2. Normalform anwenden ... 300


8.4 ... Die 3. Normalform anwenden ... 303


8.5 ... Denormalisierung ... 304


8.6 ... Übungen ... 306





9. Datenmodelle in Tabellen überführen ... 309



9.1 ... Die Ausbildungsdatenbank anlegen ... 309


9.2 ... Tabellen mit Beziehungen zu anderen Tabellen erstellen ... 311


9.3 ... Übung ... 318


9.4 ... Die referenzielle Integrität verstehen ... 320





10. Operationen auf Tabellen in Beziehungen anwenden ... 327



10.1 ... Zeilen in Tabellen einfügen, die in Beziehung zueinander stehen ... 327


10.2 ... Zeilen aus Tabellen, die in Beziehung stehen, mit JOIN verbunden
abfragen ... 337


10.3 ... Beziehungen (Schlüsselbeziehungen) ändern ... 375


10.4 ... Beziehungen (Schlüsselbeziehungen) aufheben oder löschen ... 386





11. Transaktionen ... 397



11.1 ... Forderungen an relationale Datenbanksysteme ... 398


11.2 ... Transaktionen verstehen ... 400


11.3 ... Übungen ... 407





12. Tabellenstrukturen verändern ... 409



12.1 ... Eine Tabelle umbenennen ... 409


12.2 ... Spalten einer Tabelle ändern ... 411


12.3 ... Spalten hinzufügen und entfernen ... 424


12.4 ... Beziehungen zwischen Tabellen herstellen und entfernen ... 426


12.5 ... Übungen ... 429





13. Mit SQL rechnen ... 437



13.1 ... Spaltenwerte addieren ... 438


13.2 ... Spaltenwerte subtrahieren ... 440


13.3 ... Spaltenwerte multiplizieren ... 440


13.4 ... Spaltenwerte dividieren ... 441


13.5 ... Den Restwert einer Division von Spaltenwerten berechnen ... 442


13.6 ... Nach dem Ergebnis einer Berechnung filtern ... 443


13.7 ... Nach dem Ergebnis einer Berechnung sortieren lassen ... 443


13.8 ... Übungen ... 445





14. Skalarfunktionen anwenden ... 449



14.1 ... Funktionen für Textwerte ... 450


14.2 ... Funktionen für Zahlenwerte ... 463


14.3 ... Verschachtelte Funktionsaufrufe ... 469


14.4 ... Übungen ... 472





15. Bedingungslogik ... 475



15.1 ... Die CASE-Klausel ... 475


15.2 ... Bedingungslogik in einer Spaltenauswahlliste einer SELECT-Anweisung
anwenden ... 476


15.3 ... Bedingungslogik in einer ORDER BY-Klausel anwenden ... 478


15.4 ... Übungen ... 480





16. Mit Zeit und Datum arbeiten ... 483



16.1 ... Datumsformate ... 483


16.2 ... Skalarfunktionen für Zeit- und Datumsangaben in SQL nutzen ... 484


16.3 ... Zeit- und Datumsangaben formatieren ... 487


16.4 ... Datumsangaben extrahieren (EXTRACT) ... 502


16.5 ... Mit Datumsangaben rechnen ... 507





17. Spaltenwerte gruppieren (GROUP BY) ... 515



17.1 ... Die Aggregatfunktion COUNT anwenden ... 516


17.2 ... Die Aggregatfunktion SUM anwenden ... 521


17.3 ... Die Aggregatfunktion AVG anwenden ... 523


17.4 ... Die Aggregatfunktion MAX anwenden ... 525


17.5 ... NULL-Werte berücksichtigen ... 526


17.6 ... Nach aggregierten Werten einer Gruppierung filtern (HAVING) ... 531


17.7 ... Nach zwei oder mehr Spalten gruppieren ... 533





18. Mächtiges Werkzeug: Die Unterabfragen (Subqueries) ... 537



18.1 ... Unterabfragen, die in Korrelation zueinander stehen ... 538


18.2 ... Unterabfragen, die nicht in Korrelation zueinander stehen ... 544


18.3 ... Vergleichsoperatoren auf Unterabfragen mit ANY, SOME und ALL anwenden
... 550


18.4 ... Auf die Existenz von Ergebniszeilen aus Unterabfragen prüfen (EXISTS)
... 555





19. Views: Abfragen in virtuellen Tabellen speichern ... 561



19.1 ... Einfache Views anlegen ... 562


19.2 ... Views und ORDER BY ... 567


19.3 ... INSERT, UPDATE und DELETE auf Views anwenden ... 570


19.4 ... Views entfernen oder ersetzen ... 581





20. Performance von Abfragen optimieren (Index) ... 583



20.1 ... Einführung ... 583


20.2 ... Syntax: Index erstellen ... 586


20.3 ... Eine Tabelle mit vielen Zeilen generieren ... 586


20.4 ... Einen Index für eine Tabelle anlegen ... 588


20.5 ... Einen Index über mehrere Spalten anlegen ... 590


20.6 ... Den Index einer Tabelle löschen ... 592


20.7 ... Fremdschlüsselspalten indexieren ... 593


20.8 ... Übungen ... 596





Index ... 601 

Kritik

¯Eine gründliche, verständliche und dabei auch gut lesbare Einführung in SQL.® LINUX MAGAZIN 201909 

Autoreninfo

Laube, Michael
Michael Laube arbeitet im Bereich Logistik eines öffentlichen Auftraggebers. Zu seinen täglichen Aufgaben zählt es, Produktstammdaten zu verarbeiten und unterschiedliche Anforderungen im Bereich der Informatik zu koordinieren und umzusetzen. Er nutzt relationale Datenbanken und die Abfragesprache SQL, um die Produktstammdaten aufzubereiten und Anwendern zur Verfügung zu stellen. Außerdem entwickelt er als Sun Certified Java Programmer und Sun Certified Web Component Developer unternehmensweite Anwendungen. 

Mehr vom Verlag:

Rheinwerk Verlag GmbH

Mehr aus der Reihe:

Rheinwerk Computing

Mehr vom Autor:

Laube, Michael

Produktdetails

Medium: Buch
Format: Gebunden
Seiten: 608
Sprache: Deutsch
Erschienen: Juli 2019
Auflage: 2., aktualisierte Auflage
Sonstiges: .459/07070
Maße: 243 x 185 mm
Gewicht: 1247 g
ISBN-10: 3836270706
ISBN-13: 9783836270700
Verlagsbestell-Nr.: 459/07070

Bestell-Nr.: 26261681 
Libri-Verkaufsrang (LVR): 15436
Libri-Relevanz: 300 (max 9.999)
Bestell-Nr. Verlag: 459/07070

LIBRI: 2693483
LIBRI-EK*: 20.96 € (25.00%)
LIBRI-VK: 29,90 €
Libri-STOCK: 1
* EK = ohne MwSt.

UVP: 0 
Warengruppe: 16320 

KNO: 76871674
KNO-EK*: 18.84 € (25.00%)
KNO-VK: 29,90 €
KNV-STOCK: 35

KNO-SAMMLUNG: Rheinwerk Computing
KNOABBVERMERK: 2., überarb. Aufl. 2019. 608 S. 24 cm
KNOSONSTTEXT: .459/07070
KNOZUSATZTEXT: Bisherige Ausg. siehe T.-Nr. 61768501
Einband: Gebunden
Auflage: 2., aktualisierte Auflage
Sprache: Deutsch

Alle Preise inkl. MwSt., innerhalb Deutschlands liefern wir immer versandkostenfrei. Informationen zum Versand ins Ausland.

Kostenloser Versand*

innerhalb eines Werktages

OHNE RISIKO

30 Tage Rückgaberecht

Käuferschutz

mit Geld-Zurück-Garantie