Einführung
Das Subtrahieren von Werten ist eine grundlegende Operation in jeder SQL-Datenbank, auch in SQLite. Wenn du verstehst, wie du Subtraktionen durchführst und in deinen Abfragen einsetzt, kannst du Daten deutlich besser bearbeiten und analysieren. Dieser Guide entmystifiziert die Subtraktion in SQLite, liefert klare Beispiele und erklärt die Logik dahinter. Ob du Finanzdaten aufbereitest, Zeitdifferenzen berechnest oder einfach nur Zahlen jonglierst – wenn du die Subtraktion in SQLite beherrschst, bringst du dein SQL auf das nächste Level.
Grundlagen der Subtraktion in SQLite
Wie andere SQL-Datenbanken unterstützt SQLite die grundlegenden Rechenoperationen: Addition, Subtraktion, Multiplikation und Division. Mit dem Operator - kannst du ganz einfach einen Wert von einem anderen abziehen.
Einfache Subtraktion
-- Subtracting two numbers
SELECT 10 - 5 AS difference;
Erwartete Ausgabe
difference
----------
5
Spalten subtrahieren
In der Praxis willst du oft eine Spalte von einer anderen abziehen. In SQLite ist das ganz unkompliziert.
-- Assuming a table 'financials' with columns 'revenue' and 'expenses'
SELECT revenue, expenses, revenue - expenses AS profit FROM financials;
Diese Abfrage berechnet den Gewinn, indem sie für jede Zeile der Tabelle financials die Ausgaben vom Umsatz abzieht.
Fortgeschrittene Subtraktionstechniken
Subtraktion beschränkt sich nicht auf einfache Arithmetik. Sie kann Teil komplexerer Ausdrücke sein, auch solcher mit Datums- und Zeitwerten.
Arbeiten mit Datumswerten
In SQLite kannst du ein Datum von einem anderen abziehen, um die Differenz in Tagen zu ermitteln. Dafür brauchst du allerdings die Funktion julianday, die ein Datum in eine julianische Tageszahl umwandelt. Ziehst du diese Zahlen voneinander ab, erhältst du die Differenz in Tagen.
CREATE TABLE events (
title TEXT,
start DATE,
end DATE);
INSERT INTO events VALUES('Tech Conference', '2024-02-28', '2024-03-02');
So ermittelst du die Dauer des Events:
SELECT title, julianday(end) - julianday(start) AS 'duration'
FROM events;
Erwartete Ausgabe:
Tech Conference 2.0
Bedingte Subtraktion mit CASE
Mit der CASE-Anweisung kannst du bedingte Subtraktionen durchführen. Das ist praktisch für differenziertere Berechnungen, die von bestimmten Bedingungen abhängen.
-- Assuming a table 'orders' with columns 'quantity' and 'discount_applied'
SELECT quantity, discount_applied,
CASE
WHEN discount_applied THEN quantity - 1
ELSE quantity
END AS final_quantity
FROM orders;
Dieses Beispiel zieht eins von der Menge ab, wenn ein Rabatt angewendet wurde, und zeigt so, wie du Werte bedingt subtrahierst.
Praktische Anwendungsfälle
Alter berechnen
Ein typischer Anwendungsfall ist die Berechnung des Alters einer Person anhand ihres Geburtsdatums.
SELECT name, birthdate,
(strftime('%Y', 'now') - strftime('%Y', birthdate)) - (strftime('%m-%d', 'now') < strftime('%m-%d', birthdate))
AS age
FROM people;
Diese Abfrage berechnet das Alter, indem sie das Geburtsjahr vom aktuellen Jahr abzieht und das Ergebnis korrigiert, falls der Geburtstag in diesem Jahr noch nicht erreicht ist.
Finanzberichte
Subtraktion ist zentral für Finanzberichte, zum Beispiel um die monatliche Veränderung der Ausgaben zu berechnen.
-- Assuming a table 'monthly_expenses' with columns 'month' and 'amount'
SELECT month,
amount - LAG(amount) OVER (ORDER BY month) AS monthly_change
FROM monthly_expenses;
Dieses Beispiel nutzt die Window-Funktion LAG, um die Ausgaben des Vormonats von denen des aktuellen Monats abzuziehen, und zeigt, wie mächtig Subtraktion in der Finanzanalyse ist.
Fazit
Subtraktion ist in SQLite ein vielseitiges Werkzeug in deinem SQL-Werkzeugkasten. Von einfacher Arithmetik bis hin zu komplexer bedingter Logik und Datumsberechnungen: Wenn du Subtraktion gezielt einsetzt, gewinnst du tiefere Einblicke in deine Daten. Denk dran: Übung macht den Meister. Probier diese Beispiele aus und bau Subtraktion in deine SQL-Abfragen ein, um deine Datenanalysen und Berichte zu verbessern.
Beekeeper Studio ist eine kostenlose & quelloffene Datenbank-GUI
Das beste SQL-Abfrage- & Editor-Tool, das ich je benutzt habe. Es bietet alles, was ich zum Verwalten meiner Datenbank brauche. - ⭐⭐⭐⭐⭐ Mit
Beekeeper Studio ist schnell, intuitiv und einfach zu bedienen. Beekeeper unterstützt jede Menge Datenbanken und läuft hervorragend auf Windows, Mac und Linux.
Was Nutzer über Beekeeper Studio sagen
„Beekeeper Studio hat meinen alten SQL-Workflow komplett ersetzt. Es ist schnell, intuitiv und macht die Arbeit mit Datenbanken wieder richtig Spaß.“
„Ich habe viele Datenbank-GUIs ausprobiert, aber Beekeeper findet die perfekte Balance zwischen Funktionsumfang und Einfachheit. Es funktioniert einfach.“