MWCodebymw.de ↗
🗄️ SQL

SQL-Snippets

Alle Snippets für SQL — copy-&-paste-fertig, erklärt und aus der Praxis.

sql_laufende_summe_win.sqlSQL
Profi

Laufende Summe in SQL – SUM() OVER statt Schleife in der Anwendung

Kontostand nach jeder Buchung, kumulierter Umsatz im Jahr, Restbestand nach jeder Entnahme: Alles dieselbe Frage. Mit einer Fensterfunktion beantwortet die Datenbank sie in einer Abfrage – inklusive gleitendem Durchschnitt.

17. September 2026 · 18 Aufrufe · · KIMit Hilfe von KI generiert
sql_sqlite_generated_c.sqlSQL
Fortgeschritten

Generierte Spalten in SQLite – abgeleitete Werte, die nie veralten

Bruttopreis, Suchspalte in Kleinschreibung, das Jahr aus einem Zeitstempel: Solche Werte doppelt zu pflegen ist eine Einladung an die Inkonsistenz. SQLite kann sie selbst berechnen – und sogar indizieren.

17. September 2026 · 18 Aufrufe · · KIMit Hilfe von KI generiert
sql_sqlite_trigger_upd.sqlSQL
Fortgeschritten

Trigger in SQLite – updated_at, das niemand vergessen kann

Ein Zeitstempel, den die Anwendung setzen muss, ist irgendwann falsch – spätestens beim Import, beim Admin-Skript oder beim schnellen UPDATE von Hand. Ein Trigger nimmt der Anwendung die Pflicht ab.

17. September 2026 · 16 Aufrufe · · KIMit Hilfe von KI generiert
sql_sqlite_wal_pragma_.sqlSQL
Profi

SQLite im Web – WAL-Modus und die PRAGMAs, die „database is locked" beenden

SQLite ist für kleine und mittlere Websites hervorragend – wenn man es richtig einstellt. Vier Zeilen beim Verbindungsaufbau entscheiden darüber, ob parallele Zugriffe funktionieren oder in einer Sperrmeldung enden.

17. September 2026 · 15 Aufrufe · · KIMit Hilfe von KI generiert
sql_null_coalesce_sort.sqlSQL
Einsteiger

NULL in SQL – warum COUNT(spalte) lügt und wo die leeren Werte landen

NULL ist kein Wert, sondern die Abwesenheit eines Werts. Deshalb zählt COUNT(spalte) anders als COUNT(*), summiert SUM() an leeren Zeilen vorbei und landen beim Sortieren alle Lücken am selben Ende.

17. September 2026 · 16 Aufrufe · · KIMit Hilfe von KI generiert
sql_strict_tabellen_sq.sqlSQL
Fortgeschritten

STRICT-Tabellen in SQLite: wenn „drei“ nicht mehr in eine INTEGER-Spalte passt

SQLite nimmt in einer INTEGER-Spalte klaglos den Text „drei“ entgegen und speichert ihn als Text. Das ist kein Fehler, sondern Absicht – und trotzdem der Grund für Auswertungen, die still falsche Zahlen liefern. Ein Schlüsselwort schaltet es ab.

15. August 2026 · 31 Aufrufe · · KIMit Hilfe von KI generiert
sql_lag_differenz_vorz.sqlSQL
Fortgeschritten

Wie viel mehr als gestern? Differenz zur Vorzeile mit LAG() in SQL

„Wie viele Besucher heute im Vergleich zu gestern?" – der Reflex ist ein Self-Join auf die Vorzeile. Mit der Fensterfunktion LAG() bekommst du den Wert der vorherigen Zeile direkt daneben, ohne die Tabelle ein zweites Mal anzufassen.

12. August 2026 · 32 Aufrufe · · KIMit Hilfe von KI generiert
sql_lag_lead_vorzeile_.sqlSQL
Fortgeschritten

Vergleich zur Vorzeile mit LAG() – wie stark hat sich ein Wert verändert

„Wie viele Besucher mehr als gestern?" ist in SQL erstaunlich fummelig, wenn man es mit einem Self-Join löst. Mit der Fensterfunktion LAG() greifst du direkt auf die vorherige Zeile zu – und rechnest die Differenz in einer einzigen, lesbaren Abfrage.

11. August 2026 · 37 Aufrufe · · KIMit Hilfe von KI generiert
sql_returning_sqlite.sqlSQL
Fortgeschritten

RETURNING in SQLite – die geschriebene Zeile sofort zurückbekommen

Nach einem INSERT oder UPDATE noch einmal SELECTen, um zu sehen, was drinsteht? Muss nicht sein. RETURNING liefert die betroffenen Zeilen direkt aus dem schreibenden Statement – ohne zweite Abfrage und ohne die Lücke dazwischen.

5. August 2026 · 30 Aufrufe · · KIMit Hilfe von KI generiert
sql_recursive_cte_baum.sqlSQL
Fortgeschritten

WITH RECURSIVE – Kategoriebäume und Kommentar-Threads in einer einzigen Abfrage

Kategorien mit Unterkategorien, Kommentare mit Antworten, Ordner in Ordnern: Die meisten holen sich so etwas mit einer Schleife und einer Abfrage pro Ebene. Eine rekursive CTE holt den ganzen Baum in einem Rutsch – inklusive Tiefe und Pfad.

29. Juli 2026 · 32 Aufrufe · · KIMit Hilfe von KI generiert
sql_union_vs_union_all.sqlSQL
Einsteiger

UNION vs. UNION ALL – zwei Abfragen zusammenlegen, ohne Zeilen zu verlieren

UNION entfernt Duplikate. Das klingt hilfreich, kostet aber eine komplette Sortierung – und wirft dir stillschweigend echte Zeilen weg, die zufällig identisch aussehen. UNION ALL ist fast immer die richtige Wahl.

27. Juli 2026 · 26 Aufrufe · · KIMit Hilfe von KI generiert
sql_view_wiederverwend.sqlSQL
Einsteiger

CREATE VIEW – die Abfrage, die du nur einmal schreibst

Wenn dieselbe 15-zeilige Abfrage an vier Stellen im Code steht, ändert man sie irgendwann an dreien. Eine View gibt ihr einen Namen – danach steht sie nur noch an einer Stelle.

27. Juli 2026 · 28 Aufrufe · · KIMit Hilfe von KI generiert
Seite 1 / 3Ältere →