ich habe eine Ursprungstabelle ('istdaten_original') mit Buchungssätzen, aus der ich nur bestimmte Informationen benötige. Die für mich wichtigen Infos schreibe ich mit INSERT INTO in eine neue Tabelle ('istdaten'). Gleichzeitig werden die Buchungswerte mit einem Vorzeichen (kto_vorzeichen = +1 oder -1), aus der Steuertabelle 'konten' multipliziert, um die richtige Grundlage für weitere Berechnungen zu erhalten.
Dabei kann folgendes Problem auftreten:
Es gibt Buchungen in der 'istdaten_original' mit Kontonummern, die in meiner Steuertabelle 'konten' noch nicht vorhanden sind. Sobald dieses Problem auftritt, wird der betreffende Datensatz nicht in meine Zieltabelle 'istdaten' übernommen (weil MySQL das Vorzeichen nicht findet). Sprich, ich habe in meiner Ausgangstabelle 4000 Datensätze und in meiner Zieltabelle nur 3992. Sonst bekommt man in MySQL alle naselang eine Fehlermeldung, nur in diesem Fall nicht.
Hier meine INSERT Anweisung:
Code: Alles auswählen
INSERT INTO istdaten (id_ktonr, id_beschreibung, id_wert, id_monat, id_jahr)
SELECT
istdaten_original.SachkontoNr,
istdaten_original.Buchungstext,
istdaten_original.Betrag * konten.kto_vorzeichen,
Month(Buchungsdatum),
Year(Buchungsdatum)
FROM istdaten_original, konten
where istdaten_original.SachkontoNr = konten.kto_nr
Vielen Dank für eure Hilfe!
Schöne Grüße
Werner