I-Daten aus drei Tabellen nehme und sie verbindenden (i Informationen an die betreffenden Teile gegeben verkürzen)MySQL Join kommt mit Nullwerten bis
Tabelleneintrag
date/id/...
5/1/2017/1
5/2/2017/2
5/3/2017/3
.
.
.
6/1/2017/42
Tisch engdailydata
entry_id/enginehrs/...
1/654186
2/655000
3/660000
.
.
.
42/800000
Tisch 24hrlog
date/air1/..
6/1/2017/4200
Ich versuche, eine Liste aus diesem zu bekommen, die alle Daten in Eintrag oder 24hrlog Tabelle hat
Die SQL funktioniert, um alle Werte mit Ausnahme des Datums (wenn Datum fehlt in einer von ihnen ich bekomme Nullwert)
SELECT
`entry`.`date` AS `date1`,
`24hrlog`.`date` AS `date2`,
engdailydata`.`enginehrs1` AS `enginehrs1`,
`24hrlog`.`air1` AS `air1`
FROM
(`engdailydata`
LEFT JOIN (`24hrlog`
JOIN `entry` ON ((`entry`.`date` = `24hrlog`.`date`))) ON
((`entry`.`entry_id` = `engdailydata`.`entry_id`)))
Zum Beispiel läuft das ich bin 40 Zeilen zurückgegeben.
date1/date2/enginehrs1/air1
NULL/NULL/654186 /NULL
NULL/NULL/655000 /NULL
NULL/NULL/660000 /NULL
.
.
.
6/1/2017/6/1/2017/800000/4200
Was ich
date1/date2/enginehrs1/air1
5/1/2017/NULL/654186 /NULL
5/2/2017/NULL/655000 /NULL
5/3/2017/NULL/660000 /NULL
.
.
.
6/1/2017/6/1/2017/800000/4200
bearbeitet Hauptpost zur weiteren Klärung –
Ihre Anfrage hat eine sehr seltsame Join-Syntax, die ich denke, ist ungültig und sollte vom DBMS abgelehnt werden. Zu Ihren Tabellen: Ein 'Eintrag' wird durch seine ID identifiziert. Jeder 'Eintrag' hat ein Datum. Für jede 'entry.id' können wir null, einen oder viele Datensätze in' engdailydata' finden. Es gibt auch eine Tabelle '24hrlog' mit Daten. Nun wollen Sie alle 'entry' Daten mit all ihren' engdailydata' Daten zusammen mit den '24hrlog' Daten anzeigen, wenn die 'engdailydata.date' in' 24hrlog' existiert oder ohne wenn nicht. Ist das richtig? –