java - navicat中如何查看执行一条SQL语句的耗时
高洛峰
高洛峰 2017-04-18 09:50:29
0
5
879

在软件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查询块呢?求解释。

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全員に返信(5)
巴扎黑

ここではインデックスが作成されています。explain SELECT * FROM idc_logistics_assign_rules WHERE id IN ('100','200') を実行すると、インデックスの使用状況が表示されます。これはインデックスに役立ちます。正しいクエリ時間を取得するには、SQL_NO_CACHE

を追加します。 リーリー

注意: インデックスを作成する必要がありますか?それは状況によります。つまり、インデックスが使用できるかどうかに依存します。 in の範囲がクラスター化インデックス in(1,2) の場合、MSSQL によって自動的に id=1 または id=2 に最適化されます。これを確認するには、explain を使用します。返される行は 2 in(1,2) です。 2) id=1 または id=2 Explain は同じデータを返します。有益な指標であることを責任を持ってお伝えします。インデックスを使用しないことに関するインターネット上の言及のほとんどは古い資料であり、MSSQL2K 以降に最適化されています。

いいねを押す +0
伊谢尔伦

私のナビキャットは一番下の行にあります

いいねを押す +0
刘奇

それはほとんど 到处都是

のようなものです
いいねを押す +0
伊谢尔伦

ID は int 型である必要があります。クエリ時に一重引用符

を追加する必要があるのはなぜですか?
いいねを押す +0
PHPzhong

右下隅にクエリ時間が秒単位で表示されます

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート