Dies ist kein DUPLICATE .. Ich arbeite mit zwei Tabellen. Die "Antwort" -Benutzer verknüpfen, um nur eine Tabelle zu verwenden. Ich muss den neuesten Eintrag mit verwandten Tabellen zurückgeben. Ich habe keine Lösung gefunden, die dies tut.SQL-Abfrage, die letzte Eingabe pro Benutzer in MySQL mit zwei Tabellen zurückgeben
Ich arbeite an einer Zeitschaltuhr. Ich habe zwei Tabellen in meinem db namens Mitarbeiter und Schläge. Die Stempeltabelle hat ein Feld namens 'emp_id', das sich auf das Feld 'id' in der Tabelle employees bezieht. Ich versuche herauszufinden, eine SQL-Abfrage, die den neuesten Eintrag für jeden Mitarbeiter (ihren aktuellen Status, ob sie derzeit IN, OUT, BREAK, etc. getakteten sind)
Die Antworten, die ich gefunden habe (und sind referenziert in den Kommentaren) ziehen nicht die Informationen aus zwei Tabellen, nur einer.
Bisher habe ich Folgendes, aber das gibt nur den ersten Schlag für jeden Mitarbeiter zurück. Ich versuche stattdessen den letzten Schlag zurückzugeben.
SELECT CONCAT(employees.first, ' ', 'employees.last) AS name, punches.id, punches.date, TIME_FORMAT(punches.tistamp, '%H:%i') AS time
FROM employees, punches
WHERE punches.emp_id=employees.id
GROUP BY emp_id
ORDER BY emp_id DESC
Die Schläge Tabelle hat eine ‚id‘ Feld, die auto-Schritte, so im wesentlichen mich für den max punches.id für jeden Mitarbeiter suchen.
Verwenden 'Join' statt einem' Where' und Show in einem Tabellenformat gewünschte Ausgabe, – Igoranze
beiden Schemata Tabellen hinzufügen –
ich zu ändern versucht, WO, JOIN aber erhielt einen mysql Fehler. – craisondigital