SQLite - Ausdrücke

Hallo da draußen, zukünftige Datenbank-Zauberer! Heute tauchen wir ein in die faszinierende Welt der SQLite-Ausdrücke. Als dein freundlicher Nachbarschafts-Computerlehrer bin ich hier, um dich auf dieser Reise Schritt für Schritt zu führen. Mach dir keine Sorgen, wenn du neu im Programmieren bist – wir beginnen bei den Grundlagen und arbeiten uns hoch. Also hol dir dein lieblingsGetränk, setze dich bequem hin und lassen wir gemeinsam diese SQLite-Abenteuerreise antreten!

SQLite - Expressions

Was sind SQLite-Ausdrücke?

Bevor wir ins Detail gehen, lassen wir uns zunächst darstellen, was Ausdrücke in SQLite sind. Stell dir Ausdrücke als Bausteine deiner Datenbankabfragen vor. Sie sind wie die Zutaten in einem Rezept – du kombinierst sie auf verschiedene Weise, um mächtige und bedeutungsvolle Ergebnisse zu erzielen.

In SQLite können Ausdrücke so einfach wie ein einzelner Wert oder so komplex wie eine Kombination mehrerer Operationen sein. Sie werden in verschiedenen Teilen von SQL-Anweisungen verwendet, wie SELECT, WHERE und ORDER BY-Klauseln.

Nun tauchen wir ein in die drei Hauptarten von Ausdrücken in SQLite:

  1. Boolesche Ausdrücke
  2. Numerische Ausdrücke
  3. Datum Ausdrücke

SQLite - Boolesche Ausdrücke

Boolesche Ausdrücke sind wie die wahr/falsch-Fragen in einem Quiz. Sie werden entweder TRUE oder FALSE ausgewertet. Diese Ausdrücke sind super hilfreich, wenn du Daten filtern oder Entscheidungen in deinen Abfragen treffen möchtest.

Grundlegende Vergleichsoperatoren

Lassen wir mit einigen grundlegenden Vergleichsoperatoren beginnen:

Operator Beschreibung
= Gleich
<> Ungleich
< Kleiner als
> Größer als
<= Kleiner oder gleich
>= Größer oder gleich

Hier ist ein einfaches Beispiel:

SELECT name, age
FROM students
WHERE age > 18;

In dieser Abfrage ist age > 18 unser boolescher Ausdruck. Er überprüft, ob das Alter größer als 18 ist und gibt TRUE für alle Schüler zurück, die über 18 Jahre alt sind.

Logische Operatoren

Nun, lassen wir die Dinge mit logischen Operatoren interessanter gestalten:

Operator Beschreibung
AND Logisches UND
OR Logisches ODER
NOT Logisches NICHT

Hier ist ein Beispiel, das mehrere Bedingungen kombiniert:

SELECT name, age, grade
FROM students
WHERE age > 18 AND grade = 'A';

Diese Abfrage findet alle Schüler, die älter als 18 Jahre sind UND eine Note 'A' haben. Es ist, als ob man sagt: "Zeige mir die erwachsenenStraight-A-Schüler!"

BETWEEN Operator

Der BETWEEN-Operator ist eine Abkürzung, um zu überprüfen, ob ein Wert innerhalb eines bestimmten Bereichs liegt:

SELECT name, score
FROM exam_results
WHERE score BETWEEN 80 AND 90;

Diese Abfrage findet alle Schüler, die zwischen 80 und 90 Punkte in ihrer Prüfung erreicht haben. Es ist äquivalent zu score >= 80 AND score <= 90.

SQLite - Numerische Ausdrücke

Numerische Ausdrücke in SQLite ermöglichen es dir, mathematische Operationen in deinen Abfragen durchzuführen. Es ist, als hättest du einen Taschenrechner in deiner Datenbank!

Arithmetische Operatoren

Hier sind die grundlegenden arithmetischen Operatoren:

Operator Beschreibung
+ Addition
- Subtraktion
* Multiplikation
/ Division
% Modulo

Sehen wir uns sie in Aktion an:

SELECT name,
price,
quantity,
price * quantity AS total_cost
FROM orders;

In dieser Abfrage berechnen wir den Gesamtpreis, indem wir Preis und Menge multiplizieren. Das Schlüsselwort AS ermöglicht es uns, unserer berechneten Spalte einen Namen zu geben.

Aggregatfunktionen

SQLite bietet auch Aggregatfunktionen, die auf eine Gruppe von Werten operieren:

Funktion Beschreibung
AVG() Berechnet den Durchschnitt
SUM() Berechnet die Summe
COUNT() Zählt die Anzahl der Zeilen
MAX() Findet den maximalen Wert
MIN() Findet den minimalen Wert

Hier ist ein Beispiel, das Aggregatfunktionen verwendet:

SELECT
AVG(price) AS average_price,
SUM(quantity) AS total_items,
COUNT(*) AS order_count,
MAX(price) AS highest_price,
MIN(price) AS lowest_price
FROM orders;

Diese Abfrage gibt uns eine Zusammenfassung unserer Bestellungen, einschließlich des Durchschnittspreises, der Gesamtzahl der verkauften Artikel, der Anzahl der Bestellungen und der höchsten und niedrigsten Preise.

SQLite - Datum Ausdrücke

Mit Daten in Datenbanken zu arbeiten kann knifflig sein, aber SQLite bietet einige praktische Funktionen, um unser Leben einfacher zu machen.

Datum und Uhrzeit Funktionen

Hier sind einige häufig verwendete Datum und Uhrzeit Funktionen:

Funktion Beschreibung
date() Gibt das aktuelle Datum zurück
time() Gibt die aktuelle Uhrzeit zurück
datetime() Gibt das aktuelle Datum und die Uhrzeit zurück
julianday() Gibt den Julianischen Tag für ein Datum zurück
strftime() Formatiert ein Datum gemäß einem Formatierungsstring

Sehen wir uns an, wie wir diese Funktionen verwenden können:

SELECT
date('now') AS current_date,
time('now') AS current_time,
datetime('now') AS current_datetime,
julianday('now') AS julian_day,
strftime('%Y-%m-%d %H:%M', 'now') AS formatted_datetime;

Diese Abfrage zeigt uns verschiedene Möglichkeiten, mit dem aktuellen Datum und der Uhrzeit zu arbeiten.

Datum Berechnungen

Wir können auch Berechnungen mit Daten durchführen:

SELECT
name,
hire_date,
date(hire_date, '+1 year') AS first_anniversary,
julianday('now') - julianday(hire_date) AS days_employed
FROM employees;

In dieser Abfrage berechnen wir das erste Arbeitsjubiläum jedes Mitarbeiters und wie viele Tage sie bereits beschäftigt sind.

Und das war's, Leute! Wir haben die Welt der SQLite-Ausdrücke bereist, von boolescher Logik bis hin zu numerischem Rechnen bis hin zu Zeitreisen (na gut, fast Zeitreisen). Denke daran, Übung macht den Meister, also habe keine Angst, diese Ausdrücke in deinen eigenen Abfragen auszuprobieren.

Bevor wir aufhören, hier ist eine kleine Geschichte aus meiner Lehrerfahrung: Ich hatte einmal einen Schüler, der mit booleschen Ausdrücken kämpfte. Er vermischte AND und OR ständig. Also sagte ich ihm, er solle AND als strengen Eltern (beide Bedingungen müssen wahr sein) und OR als nachsichtigen Eltern (entweder Bedingung kann wahr sein) denken. Er hat es nie wieder vergessen!

Ich hoffe, dieser Leitfaden hat hilfreich und vielleicht sogar ein bisschen spaßig gewesen. Bleib neugierig, bleib neugierig und vor allem, bleib am Lernen. Bis zum nächsten Mal, fröhliches Coden!

Credits: Image by storyset