sql >> Databáze >  >> RDS >> Mysql

Jak lze vytvořit index v části data pole DATETIME v MySql

Pokud si dobře pamatuji, spustí se skenování celé tabulky, protože sloupec procházíte funkcí. MySQL poslušně spustí funkci pro každý sloupec a obejde index, protože optimalizátor dotazů nemůže skutečně znát výsledky funkce.

Co bych udělal, je něco jako:

SELECT * FROM transactionlist 
WHERE TranDateTime BETWEEN '2008-08-17' AND '2008-08-17 23:59:59.999999';

To by vám mělo poskytnout vše, co se stalo 2008-08-17.



  1. Zahrnout chybějící měsíce do dotazu Seskupit podle

  2. Použití funkcí password_hash a password_verify PHP 5.5

  3. Jak používat SUBSTRING() v MySQL

  4. Porušuje MySQL standard tím, že umožňuje výběr sloupců, které nejsou součástí skupiny podle klauzule?