SQL-Training: Rechnungswesen Schweiz

lock
Bevorstehend

CRUD-Übungen mit einer echten Buchhaltungsdatenbank – von INSERT bis komplexen Auswertungen

Ziele dieses Moduls
  • Sie können neue Geschäftsfälle mit INSERT korrekt in ein Buchungsjournal eintragen
    Anwenden
  • Sie können fehlerhafte Buchungen mit UPDATE und DELETE gezielt korrigieren oder entfernen
    Anwenden
  • Sie können mit SELECT und WHERE gezielt Buchungsdaten auswerten und filtern
    Anwenden
  • Sie können eine mehrstufige Transaktion mit mehreren SQL-Befehlen selbstständig planen und ausfĂĽhren
    Analysieren

Du wendest alle SQL-Grundbefehle auf eine realistische Buchhaltungsdatenbank an. Das Journal der Firma enthält echte Buchungssätze nach Schweizer Kontenplan (KMU-Kontenrahmen).

SQL-Training: Rechnungswesen Schweiz

In diesem Modul wendest du alle SQL-Grundbefehle auf eine realistische Buchhaltungsdatenbank an. Die Datenbank enthält:

  • kontenklassen – die 4 Klassen: Aktiven, Passiven, Ertrag, Aufwand
  • konten – der vollständige Kontenplan der Firma
  • buchungen – das Journal mit allen Buchungssätzen

Öffne zuerst den SQL Playground und wähle die Datenbank «Buchhaltung». Schaue dir dann den Kontenplan an – du wirst ihn für die Aufgaben brauchen:

SELECT * FROM konten ORDER BY kontonummer;

🚀 Jetzt üben!

Öffne den SQL Playground und wähle die Datenbank «Buchhaltung»:

➡️ SQL Playground öffnen

Teil 1: Neue Geschäftsfälle erfassen (INSERT)

Mit INSERT erfasst du neue Buchungen im Journal. Jede Buchung hat ein Soll-Konto und ein Haben-Konto – das ist die doppelte Buchhaltung.

Beispiel: Barverkauf einer Dienstleistung fĂĽr 200 CHF.

INSERT INTO buchungen (datum, buchungstext, soll_konto, haben_konto, betrag)
VALUES ('2026-08-10', 'Dienstleistung bar', 1000, 3400, 200.00);

Das Kasse-Konto (1000) wächst im Soll, der Dienstleistungsertrag (3400) im Haben.

Challenge

Aufgabe 1 – Materialeinkauf auf Rechnung

Wir kaufen am 12.08.2026 neues Verpackungsmaterial fĂĽr 450.00 CHF auf Rechnung (Kredit).

Tipp: Schaue im Kontenplan nach «MaterialAufwand» und «VerbindlichkeitenLL».

-- Dein SQL-Code hier:

Challenge

Aufgabe 2 – Privatentnahme aus Kasse

Der Inhaber entnimmt am 14.08.2026 für ein Abendessen 150.00 CHF aus der Geschäftskasse.

Tipp: Eine Privatentnahme belastet das Eigenkapital (Haben) und reduziert die Kasse (Haben). Ăśberlege: Welches Konto steht im Soll?

-- Dein SQL-Code hier:

Challenge

Aufgabe 3 – Lieferantenrechnung begleichen

Wir begleichen am 15.08.2026 eine alte Lieferantenrechnung (VerbindlichkeitenLL) ĂĽber 1'200.00 CHF per BankĂĽberweisung.

Tipp: Die Verbindlichkeit sinkt (Soll), das Bankguthaben sinkt (Haben).

-- Dein SQL-Code hier:

Teil 2: Daten korrigieren (UPDATE)

Buchungsfehler passieren. Mit UPDATE kannst du einen bestehenden Wert gezielt korrigieren. Wichtig: Immer mit WHERE arbeiten, sonst änderst du alle Zeilen!

Beispiel: Den Buchungstext von Beleg 5 korrigieren.

UPDATE buchungen
SET buchungstext = 'Neue Beschreibung'
WHERE beleg_id = 5;

Challenge

Aufgabe 4 – Falscher Betrag

Bei Beleg-ID 12 wurde ein falscher Betrag gebucht. Statt 1'100.00 CHF mĂĽssten es 1'150.00 CHF sein. Korrigiere dies.

-- Dein SQL-Code hier:

Challenge

Aufgabe 5 – Falsches Datum

Die Buchung mit Beleg-ID 20 fand nicht im März, sondern am 01.04.2026 statt. Passe das Datum an.

-- Dein SQL-Code hier:

Teil 3: Daten löschen (DELETE)

Mit DELETE entfernst du Zeilen dauerhaft aus der Tabelle. Auch hier gilt: Ohne WHERE löschst du alles!

Beispiel: Fehlerhafte Buchung entfernen.

DELETE FROM buchungen
WHERE beleg_id = 99;

Challenge

Aufgabe 6 – Doppelte Buchung löschen

Die Buchung mit Beleg-ID 25 wurde irrtümlich doppelt erfasst. Lösche einen der Einträge.

Hinweis: In einer echten Buchhaltung würde man eine Stornobuchung machen. Im Training löschen wir direkt.

-- Dein SQL-Code hier:

Teil 4: Informationen auswerten (SELECT)

Mit SELECT holst du Daten gezielt aus der Datenbank. Die Kombination mit WHERE erlaubt präzise Filterung.

Beispiel: Alle Buchungen ĂĽber 1'000 CHF anzeigen.

SELECT * FROM buchungen
WHERE betrag > 1000;

Challenge

Aufgabe 7 – Kassenbewegungen

Erstelle eine Liste aller Buchungen, die das Konto Kasse (1000) betreffen – egal ob im Soll oder Haben.

Tipp: Nutze OR um beide Fälle abzudecken.

-- Dein SQL-Code hier:

Challenge

Aufgabe 8 – Monatsauswertung Juni

Zeige alle Buchungen an, die im Monat Juni 2026 getätigt wurden.

Tipp: Nutze WHERE datum LIKE '2026-06%'

-- Dein SQL-Code hier:

Teil 5: Die Challenge (Eigenleistung)

Jetzt bist du auf dich allein gestellt! Die folgenden Aufgaben erfordern, dass du den Kontenplan selbst konsultierst und mehrere SQL-Befehle kombinierst.

Challenge

Aufgabe 9 – Kauf einer Spezialmaschine (Split-Zahlung)

Wir kaufen am 20.08.2026 eine neue Spezialmaschine fĂĽr 12'000.00 CHF.

  • Wir bezahlen 2'000.00 CHF sofort bar aus der Kasse
  • Der Rest von 10'000.00 CHF bleibt als offene Rechnung (VerbindlichkeitenLL)

Hinweis: Du musst zwei separate INSERT-Befehle schreiben – je einen pro Zahlungsweg!

-- Teil 1: Barzahlung (2'000 CHF)

-- Teil 2: Restbetrag auf Rechnung (10'000 CHF)

Challenge

Aufgabe 10 – Jahresabschluss-Analyse (Mehrstufige Aufgabe)

Du bist Buchhalter und sollst den Halbjahresabschluss (Jan–Jun 2026) vorbereiten. Löse die Aufgabe in drei Schritten:


Schritt A – Fehlerbereinigung:
Vor der Auswertung musst du einen Fehler korrigieren: Die Buchung mit Beleg-ID 38 hat einen falschen Buchungstext. Er soll lauten: 'Hosting GebĂĽhren Q2 Bank'. Korrigiere dies zuerst.

-- Schritt A:


Schritt B – Aufwandsübersicht:
Erstelle eine Übersicht aller Aufwandsbuchungen (alle Konten der Klasse 4, also soll_konto zwischen 4000 und 6999) mit einem Betrag von mehr als 500 CHF. Zeige Datum, Buchungstext und Betrag an – sortiert nach Betrag absteigend.

-- Schritt B:


Schritt C – Neuer Abschlusseintrag:
Füge am 30.06.2026 einen neuen Abschluss-Buchungssatz ein: Die Büroversicherung wird mit 840.00 CHF per Bank bezahlt. Der Aufwand gehört zu «VerwaltungsAufwand». Trage den Buchungstext 'Büroversicherung Halbjahr' ein.

-- Schritt C:

Checklist

0/4