Pouze návrh, pokud jde o indexy v datetime v msql, je stopa indexu, která ovlivňuje časy vyhledávání (Ano, zdá se to zřejmé... ale čtěte dále).
Důležité pro to při indexování na datetime říkají například '2015-06-05 22:47:20.102', index musí zohledňovat každé místo v datetime. To se stává prostorově velmi velké a objemné. Úspěšný přístup, který jsem využil, je vytvořit nový sloupec datetime a naplnit data zaokrouhlením času na hodinu a poté vytvořením indexu na tomto novém sloupci. Příklad „2015-06-05 22:47:20.102“ se překládá na „2015-06-05 22:00:00.000“. Tímto přístupem ponecháme podrobná data na pokoji a můžeme je zobrazit nebo použít hledáním v tomto novém sloupci, což nám poskytuje přibližně 10násobnou (minimálně) návratnost toho, jak rychle jsou výsledky vráceny. To je způsobeno skutečností, že index nemusí zohledňovat pole minut, sekund a milisekund.