0

約1500文字の長さの大きな文字列を各mysqlデータベース行に格納しています。この値はあまり使用されないため、パフォーマンスはそれほど重要ではありませんが、データベースの他の列の値が頻繁に使用されます。

これらの大きな文字列を他のデータ(より頻繁にアクセスする)と同じ行のこのテーブルに格納することは、私にとって最適ではありませんか?これは何らかの形でパフォーマンスを低下させますか?

これらの大きな文字列を別のテーブルに保存する必要がありますか?mysqlがこれらの種類のものをどのように最適化するかについてはよくわかりません。また、心配する必要があるかどうかもわかりません。

4

1 に答える 1

1

「触れない」場合は、これらの文字列を他のテーブルに保存する必要はありません。

このようなものは使用しないでください-

SELECT * FROM `my_table`

これにより、データベースからその長い文字列を読み取ることができます。このようにしてみてください。

SELECT field1, field2 FROM `my_table`

ここで、field1とfield2は長い文字列フィールドではありません。もちろん、必要に応じて、それもSELECTクエリに含めます。このようにして、データベースからのフェッチにかかる時間を節約できます。

そして、あなたがたくさんのデータを持っていない間、あなたはこれについて心配する必要はありません。

これを読んでみてください:

http://dev.mysql.com/doc/refman/5.0/en/select-optimization.html

于 2012-04-18T00:53:34.287 に答える