1) Upewnij się, że masz indeks na sygnaturze czasowej
2) Zakładając, że id_tick jest zarówno KLUCZEM PODSTAWOWYM, jak i indeksem klastrowym, oraz zakładając, że id_tick zwiększa się w funkcji czasu (ponieważ robisz MAX)
Możesz spróbować tego:
SELECT id_tick, price, timestamp
FROM EURUSD
WHERE id_tick = (SELECT id_tick
FROM EURUSD WHERE timestamp <='2010-04-16 15:22:05'
ORDER BY id_tick DESC
LIMIT 1)
Powinno to być jednak podobne do wydajności janmoesena, ponieważ w każdym przypadku powinna istnieć wysoka korelacja między id_tick a znacznikiem czasu