MySQL Select geht nicht?

ZaoDaDong  02.02.2025, 06:04

Was für einen Datentyp hat die Spalte "ueberstunden" ?

TrucksLOG 
Beitragsersteller
 02.02.2025, 06:05

INT, dort werden die Überstunden in Minuten eingetragen und später als HH:ii wieder ausgegeben

2 Antworten

Versuchs mal mit

SELECT id, ueberstunden FROM arbeitszeiten a 
WHERE a.id IN
( SELECT MAX(id) 
  FROM arbeitszeiten 
  GROUP BY ma_id
);

TrucksLOG 
Beitragsersteller
 02.02.2025, 06:12

Funktioniert. Also sucht er hier die id und ueberstunden, wenn bei id die MAX(id) gefunden wird?

ZaoDaDong  02.02.2025, 06:12
@TrucksLOG

Du willst ja den datensatz mit der ID, die jeweils am größten ist. Genau das macht meine Query. In der Subquery wird die jeweils größte ID ermittelt und über die Query darüber wird der zugehörige Datensatz abgefragt.

id 105 kommt doppelt vor denk primärschlüssel zu vergeben und dabei die integer richtig anzugeben


TrucksLOG 
Beitragsersteller
 02.02.2025, 06:04

Das ist korrekt, das ist die Mitarbeiter-ID