MySQL: Duplikate auf bestimmte Anzahl begrenzen

jmar

New member
Doppelte Einträge sollten max. 3x drin sein, gibt es eine bessere Lösung als das?

SELECT DISTINCT `et`.`code` FROM xyz et WHERE `et`.`timestamp` > (TIMESTAMPADD(SECOND, -15, NOW()))
UNION ALL
SELECT DISTINCT `et`.`code` FROM xyz et WHERE `et`.`timestamp` > (TIMESTAMPADD(SECOND, -15, NOW()))
UNION ALL
SELECT DISTINCT `et`.`code` FROM xyz et WHERE `et`.`timestamp` > (TIMESTAMPADD(SECOND, -15, NOW()))

Danke für die Feedbacks.

- - - Aktualisiert - - -

Nein ist auch keine Lösung, wenn es nur 1 oder 2x drin ist wird es ebenfalls auf 3 vervielfacht. Ab > 3 sollte auf 3 begrenzt werden, drunter sollte die real in der Tabelle hinterlegte Menge ausgegeben werden.

- - - Aktualisiert - - -

...und die Zeitfunktionen sind ebenfalle ein Problem, hintereinander aufgerufen = Abweichung

- - - Aktualisiert - - -

Hat sich erledigt.
 
Oben