ホームページ >バックエンド開発 >PHPチュートリアル >またはクエリを使用した MySQL 条件はインデックスをトリガーしませんか?

またはクエリを使用した MySQL 条件はインデックスをトリガーしませんか?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-23 14:16:201648ブラウズ

引数は次のとおりです: where 条件に または が表示される場合、インデックスは使用されません


私のテスト結果は次のとおりです:

mysql> explain select * from emp where ename="dsleos" or ename="saesad" \G*************************** 1. row ***************************           id: 1  select_type: SIMPLE        table: emp         type: rangepossible_keys: e_i          key: e_i      key_len: 62          ref: NULL         rows: 2        Extra: Using where1 row in set (0.00 sec)


インデックスはトリガーされますか? インデックスを使用しますか?


ディスカッション(解決策)への返信

もちろんインデックスを使用します。
もちろん、データベース内のデータ量が十分でないため、単にテストしている場合、Mysql エンジンはインテリジェントにインデックス作成を放棄し、直接クエリを実行する可能性があります。

or の前後のフィールドはインデックスされているのでインデックスされます (myisam エンジンと innodb エンジンの結果は異なるようです)

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。