12.09.2015, 02:17
Dieser Beitrag wurde zuletzt bearbeitet: 12.09.2015, 02:25 von Arne Drews.
Hallo,
Ich stehe leider grad ein wenig auf dem Schlauch.
Ich habe 3 Tabellen, die als einzige Gemeinsamkeit eine bestimmte Spalte enthalten.
Es geht dabei um CSV-Importe, wobei ich anhand der filemtime entscheide, ob die CSV neu ist und in die DB importiert werden soll.
Es handelt sich um 3 CSV Dateien und sinniger Weise auch um 3 zugehörige Tabellen.
Nun möchte ich zwecks Entscheidung, ob importiert werden soll, zunächst aus jeder Tabelle die aktuellste filemtime haben.
Generell liefert mir das bereits mein gewünschtes Ergebnis:
Allerdings weigert er sich, dies in einer View umzusetzen! Erstelle ich eine View mit dieser Query, erhalte ich nach Abfrage dieser View für alle drei Spalten den DB-Wert .
Kann es sein, daß ich in Views nicht aggregieren darf?
Wäre mir zwar neu, aber wundern würd's mich nicht.
EDIT:
Habe es gerade nochmal als View erstellt, nun kommen zwar die korrekten Ergebnisse, aber die Abfrage dauert ca. 5 Sekunden.
Geht das besser?
Für Tipps und Infos, bin ich dankbar.
Gruß Arne
Ich stehe leider grad ein wenig auf dem Schlauch.
Ich habe 3 Tabellen, die als einzige Gemeinsamkeit eine bestimmte Spalte enthalten.
Es geht dabei um CSV-Importe, wobei ich anhand der filemtime entscheide, ob die CSV neu ist und in die DB importiert werden soll.
LOAD DATA
fällt hier leider aus, da die CSV noch überarbeitet werden muß, bevor sie importiert wird.Es handelt sich um 3 CSV Dateien und sinniger Weise auch um 3 zugehörige Tabellen.
Nun möchte ich zwecks Entscheidung, ob importiert werden soll, zunächst aus jeder Tabelle die aktuellste filemtime haben.
Generell liefert mir das bereits mein gewünschtes Ergebnis:
Code:
SELECT
MAX(table1.filemtime) as table1,
MAX(table2.filemtime) as table2,
MAX(table3.filemtime) as table3
FROM
table1,
table2,
table3
NULL
Wäre mir zwar neu, aber wundern würd's mich nicht.
EDIT:
Habe es gerade nochmal als View erstellt, nun kommen zwar die korrekten Ergebnisse, aber die Abfrage dauert ca. 5 Sekunden.
Geht das besser?
Für Tipps und Infos, bin ich dankbar.
Gruß Arne