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

Pomalý mysql dotaz, kopírování do tmp tabulky, pomocí filesort

NULL vs NOT NULL -- Použijte NOT NULL pokud nemáte obchodní důvod pro NULL .

Použijte InnoDB s příslušným PRIMARY KEY na každém stole. To bude pravděpodobně rychlejší.

Někomu pomůže „používání indexu“, kde to dává smysl.

product.categoryid = 4871 nepatří do ON klauzule pro vendorimport; přesuňte jej do WHERE doložka. (Věci to neurychlí.)

Váš dotaz nelze dále optimalizovat – musí proveďte všechny JOINy ​​a doručte všechny řádky.

Ale... Opravdu chcete 3917 řádků výstupu? Dokážete si s tím poradit? Možná chcete jen několik z nich a mohli byste je filtrovat během SELECT? To by mohlo věci urychlit.




  1. Dotazování MySQL na souřadnice zeměpisné šířky a délky, které jsou v daném okruhu mil

  2. DATEDIFF() vrací nesprávné výsledky na serveru SQL? Přečti si tohle.

  3. Proč se cizí klíč nevygeneruje pomocí GORM?

  4. Přihlášení pomocí externích služeb