SQL: Anleitungen und Praxiswissen | Seite 5 | mironsoft Blog
SQL
-
07.02.2026
Dieselbe Abfrage kann auf zwei Datenbanken mit identischem Schema, aber unterschiedlicher Datenverteilung, zwei vollkommen verschiedene Ausführungspläne erhalten, ohne dass sich am SQL-Text ein einziges Zeichen ändert. Verantwortlich dafür ist der Cost-Based Optimizer, der aus vielen theoretisch möglichen Zugriffsstrategien anhand von Statistiken, Kardinalitätsschätzungen und einem Kostenmodell diejenige auswählt, die er für die günstigste hält. Wer versteht, wie dieser Entscheidungsprozess intern abläuft, kann Optimizer-Fehlentscheidungen gezielt diagnostizieren statt sie nur zu vermuten.
-
06.02.2026
EXISTS und IN wirken auf den ersten Blick austauschbar, unterscheiden sich aber in einem entscheidenden Punkt: dem Umgang mit NULL-Werten in der inneren Ergebnismenge. Waehrend EXISTS ausschliesslich die Existenz einer Zeile prueft und NULL dabei keine Rolle spielt, kann ein NOT IN mit einer NULL-haltigen Liste stillschweigend eine leere Ergebnismenge liefern, ein Verhalten, das in Produktion regelmaessig zu fehlenden Zeilen in Reports fuehrt, ohne dass ein Fehler auftritt.
-
04.02.2026
JSON-Spalten geben einer relationalen Datenbank genau die Modellierungsfreiheit, die sonst als Argument fuer einen NoSQL-Wechsel dient, ohne auf Transaktionen, Joins und referentielle Integritaet zu verzichten. Wer JSONB in PostgreSQL oder JSON in MySQL richtig indiziert, abfragt und validiert, deckt viele semi-strukturierte Anwendungsfaelle innerhalb der bestehenden Datenbank ab.
-
04.02.2026
DATE_FORMAT, ISO-Wochen, Lücken im Datumsverlauf füllen, UTC-Konvertierung und Vorjahresvergleiche – die häufigsten Fallstricke bei zeitbasierten SQL-Auswertungen.
-
31.01.2026
Ein normalisiertes OLTP-Schema eignet sich schlecht für schnelle Analysen über Millionen Zeilen. Claude hilft beim Entwurf von Fakten- und Dimensionstabellen, bei Slowly Changing Dimensions und bei dbt-Modellen, die eine saubere analytische Schicht liefern. Dieser Artikel zeigt den Weg vom relationalen Quellsystem zum performanten Star Schema.
-
31.01.2026
Zwei Zeichenketten zusammenfuegen oder einen Teilstring extrahieren klingt nach der einfachsten Aufgabe in SQL, doch zwischen MySQL, PostgreSQL, SQL Server und Oracle unterscheiden sich Operatoren, Funktionsnamen und sogar die Zaehlweise der Zeichenposition. Wer String-Funktionen zwischen diesen Systemen portabel halten will, muss diese Unterschiede kennen, bevor Unicode und Multibyte-Zeichen zusaetzliche Fallstricke aufwerfen.
-
31.01.2026
Datumsfunktionen sind einer der Bereiche, in denen sich Datenbanken am staerksten unterscheiden, obwohl die zugrunde liegende Aufgabe simpel wirkt. Dieser Artikel vergleicht Datumsarithmetik, Formatierung, Zeitzonenbehandlung und Extraktion einzelner Datumsteile in PostgreSQL, MySQL, SQL Server und Oracle anhand konkreter, lauffaehiger Beispiele.
-
18.01.2026
SQL-Injection zählt seit Jahren zu den gefährlichsten Schwachstellen in Webanwendungen und ermöglicht Angreifern das Auslesen, Verändern oder Löschen kompletter Datenbanken über manipulierte Eingabefelder. Dieser Artikel erklärt die Mechanik von klassischer und blinder SQL-Injection, zeigt warum Escaping allein nicht ausreicht und liefert praxisnahe Lösungen mit Prepared Statements, sicheren ORM-Mustern und der Magento ResourceConnection API.
-
-
11.01.2026
Rabattaktionen, Vertragskonditionen oder Tarifstufen gelten fast nie für alle Zeit, sondern nur für einen bestimmten Zeitraum. Effective Dating bildet genau das mit zwei Spalten pro Zeile ab, einem Start- und einem Endzeitpunkt der Gültigkeit, gesteuert von der Fachlogik statt von der Datenbank automatisch. Die eigentliche Herausforderung liegt selten in den Spalten selbst, sondern darin, zuverlässig zu verhindern, dass sich zwei Gültigkeitszeiträume für dieselbe Entität überlappen. Dieser Artikel zeigt praktikable Constraint-Strategien dafür und arbeitet zwei durchgängige Praxisbeispiele durch.