How to hint the index to use in a MySQL select query?

前端 未结 4 1475
轮回少年
轮回少年 2020-12-29 19:04

I have a MySQL query (running MySQL 5.0.88), which I\'m trying to speed up. The underlying table has multiple indices and for the query in question, the wrong index is used

相关标签:
4条回答
  • 2020-12-29 19:23
    select * from table use index (idx);
    

    http://dev.mysql.com/doc/refman/5.0/en/index-hints.html

    0 讨论(0)
  • 2020-12-29 19:34

    Select Coloumn1,Coloumn2,Coloumn.... FROM TABLE_NAME USE INDEX(index_name) WHERE Coloumn="condition";

    if you have correct index thn you dnt need to use index(). your query automic select correct index.If your query slow after using index thn recheck your index ,something wrong in index. thanks in advance.enter code here

    0 讨论(0)
  • 2020-12-29 19:38

    You missed the

    FROM table
    

    Correct SQL should be:

    SELECT art.firma FROM your_table USE INDEX (i_iln) WHERE ....
    
    0 讨论(0)
  • 2020-12-29 19:41

    sometimes, with use index (index_name) optimizer might go for table scan, if you use hint force index, optimizer will be forced to use index, will go for table scan only if no ways left to get the rows with provided index.

    SELECT art.firma FROM art FORCE INDEX (i_iln);
    

    for more detail on hints USE INDEX and FORCE INDEX check this link

    0 讨论(0)
提交回复
热议问题