2

mysql インデックスのパフォーマンスはデータ型に依存しますか?

もしそうなら、そのような場合に使用するのに最適なデータ型は何ですか?

また、重複値が少ない列にインデックスを保持することが重要ですか、それとも膨大な重複値を持つ列に適用しても同じパフォーマンスが得られます。

前もって感謝します!

4

3 に答える 3

4

インデックスはさておき、最適なデータ型とは、ドメインの要件を満たす最小のものです。

列のデータ型は、それらの列のインデックスのパフォーマンスに影響を与えます。

小さいほどよい。

整数列のインデックスが最適です (小さく、高速)。

特定のインスタンスでは、オプティマイザーは、インデックスの選択性が十分でない場合 (つまり、列に多くの繰り返し値があり、検索された値が統計から決定された結果、「多すぎる」行になる場合)、インデックスを使用しないことを選択する場合があります。

@ nani1216 が投稿したリンクから:

インデックスを作成する列のサイズは重要です。データベース サーバーが検索またはインデックス作成する必要があるデータが少ないほど、高速になり、ディスク (またはメモリ内) で使用するストレージが少なくなるためです。

于 2013-09-16T06:10:20.767 に答える
1

はい、パフォーマンスはデータ型の使用によって異なります。integer データ型にインデックスを作成すると、char または varchar データ型にインデックスを作成するよりもパフォーマンスが向上します。

優れた MySQL インデックスとは? をご覧ください

于 2013-09-16T06:15:05.377 に答える