Klaus1: Denkfehler bei SQL-Abfrage?

Beitrag lesen

Hallo nochmal,

eine mögliche Lösung habe ich vielleicht:

SELECT * 
FROM vpnprotokoll AS vpn1
WHERE vpn1.logindate <> '' AND vpn1.logindate < '2021-04-01'
  AND vpn1.status = 'A'
  AND vpn1.logindate = (SELECT MAX(logindate) 
                        FROM vpnprotokoll AS vpn2
                        WHERE vpn1.username = vpn2.username)
ORDER BY vpn1.username;   

Diese Abfrage dauert aber schon mehr als 6 Sekunden 😟

Es gibt einen Index, sowohl auf username als auch auf logindate.

LG Klaus

Edit Rolf B: SQL formatiert