Als ik het me goed herinner, zal dat een hele tabelscan uitvoeren omdat je de kolom door een functie laat gaan. MySQL zal de functie gehoorzaam uitvoeren voor elke kolom, waarbij de index wordt omzeild, aangezien de query-optimizer de resultaten van de functie niet echt kan kennen.
Wat ik zou doen is zoiets als:
SELECT * FROM transactionlist
WHERE TranDateTime BETWEEN '2008-08-17' AND '2008-08-17 23:59:59.999999';
Dat zou je alles moeten geven wat er op 17-08-2008 is gebeurd.