Einstieg in SQL

(Autor)

Buch | Hardcover
616 Seiten | Ausstattung: inkl. Übungsdatenbank zum Download
2022 | 3., akt. Auflage
Rheinwerk (Verlag)
978-3-8362-8815-6 (ISBN)

Lese- und Medienproben

Einstieg in SQL - Michael Laube
29,90 inkl. MwSt
Studibuch Logo

...gebraucht verfügbar!

Zu diesem Artikel existiert eine Nachauflage
SQL: Verstehen, einsetzen, nachschlagen

  • Ohne Vorkenntnisse einsteigen
  • SQL-Abfragen, Datenmodellierung, Tipps aus der Praxis
  • Mit Beispieldatenbank, Übungen und Musterlösungen

Für alle wichtigen Datenbanksysteme: MySQL, PostgreSQL, MariaDB, MS SQL. Über 600 Seiten. Ohne Vorwissen einsteigen.
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.

Der richtige Einstieg für Sie
MySQL, MariaDB, PostgreSQL oder MS SQL? Welchen SQL-Dialekt Sie auch einsetzen möchten: Detaillierte und schrittweise Erläuterungen helfen Ihnen bei der Arbeit mit dem Datenbanksystem Ihrer Wahl.

Verstehen und einsetzen
Übungsaufgaben und Musterlösungen sorgen für den sicheren Umgang mit den SQL-Befehlen und der Syntax. Übersichtliche Zusammenfassungen zu jedem Thema erleichtern Ihnen das Nachschlagen.

Optimieren Sie Ihre Daten
Lernen Sie, wie Sie Rohdaten richtig in SQL modellieren. So sorgen Sie für einen konsistenten Datenbestand, vermeiden Redundanzen und realisieren reibungslose 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

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.



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

Die Fachpresse zur Vorauflage:

LINUX MAGAZIN: »Eine gründliche, verständliche und dabei auch gut lesbare Einführung in SQL.«

Erscheinungsdatum
Verlagsort Bonn
Sprache deutsch
Maße 168 x 240 mm
Einbandart gebunden
Themenwelt Mathematik / Informatik Informatik Datenbanken
Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Mathematik / Informatik Informatik Software Entwicklung
Schlagworte ACCESS • Anfänger • Datenbanken entwickeln • Datenmodelle • Hand-Buch lernen Grundlagen Kurse Tipps Workshops Tutorials Wissen Training Einführung • MariaDB • MS SQL • MySQL • PostgreSQL • Programmierung • Referenzielle Integrität • Relation • Skalar-Funktion • SQL-Injection • Tabelle
ISBN-10 3-8362-8815-X / 383628815X
ISBN-13 978-3-8362-8815-6 / 9783836288156
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich