在软件Navicat中,如何查看执行一条SQL语句的耗时。
如select * from table_name where id = '1' 如何查看当前的语句耗时。
==============================================================
通过测试发下:
SELECT * FROM idc_logistics_assign_rules WHERE id = '100';
SELECT * FROM idc_logistics_assign_rules WHERE id = '200';
//时间: 0.035s
SELECT * FROM idc_logistics_assign_rules WHERE id IN ('100','200')
//时间: 0.020s
我的id是主键,肯定会走索引的,那么走索引的查询应该更快啊。使用IN关键字是不走索引的,但是为什么查询要比两次主键id查询块呢?求解释。
Votre ici est indexé. Exécutez
explain SELECT * FROM idc_logistics_assign_rules WHERE id IN ('100','200')
et vous verrez l'utilisation de l'index, ce qui est utile pour l'index. Pour obtenir l'heure de requête correcte, ajoutez SQL_NO_CACHE注意
: Doit-il être indexé ? Cela dépend de la situation. Autrement dit, cela dépend si l'index peut être utilisé. Lorsque la plage de in est l'index clusterisé dans (1,2), elle sera automatiquement optimisée par MSSQL pour id=1 ou id=2. Vous pouvez utiliser expliquer pour le voir. La ligne qu'il renvoie est 2 in(1,. 2) et id=1 ou id=2 expliquent renvoie les mêmes données. Je peux vous dire de manière responsable que c'est un index utile. La plupart des mentions sur Internet concernant la non-utilisation des index sont d'anciens matériaux, optimisés depuis MSSQL2K.Mon Navicat est dans la rangée du bas
C'est presque comme si
到处都是
Votre identifiant doit être de type int. Pourquoi devons-nous ajouter des guillemets simples
lors de l'interrogation ?Il y a le temps de requête dans le coin inférieur droit en secondes