MySQL-Abfrage | Nur neueste, ungelesene Einträge darstellen

Hallo,

vielen Dank für die hervorragende Unterstützung.

Mithilfe des Beitrages von ukulele konnte ich die Abfrage erstellen, mit welcher sich sich mein gewünschtes Ergebnis realisieren lässt.

Anbei der vollständige MySQL-Query:


SELECT `candidate_author`.`candidateID`,
`candidate_author`.`initial`,

`candidate_visits`.`accountID`,

`candidates`.`firstName`,
`candidates`.`lastName`,

COUNT(*)

FROM `candidate_database`.`candidate_author`

JOIN `candidate_database`.`candidates`
ON `candidates`.`candidateID` = `candidate_author`.`candidateID`

LEFT JOIN `candidate_database`.`candidate_visits`
ON `candidate_visits`.`candidateID` = `candidate_author`.`candidateID`
AND `candidate_visits`.`accountID` = '" . $accountID . "'

WHERE DATE_SUB(CURDATE(),INTERVAL 7 DAY) < `candidate_author`.`initial`

AND `candidate_visits`.`candidateID` IS NULL

GROUP BY `candidate_author`.`candidateID`

ORDER BY `candidate_author`.`initial` DESC

LIMIT 10;


Viele Grüße und einen guten Start in die Woche

Wattfrass
 
Werbung:
Dein GROUP BY solltest du aber syntaktisch korrekt aufbauen sonst knallts bei einem zukünftigen MySQL Update.

Alle Spalten im Select müssten entweder gruppiert werden (also im GROUP BY genannt werden) oder aggregiert werden.
 
Zurück
Oben