0

我在每个 mysql 数据库行中存储一个大约 1500 个字符长的大字符串。这个值不经常使用,使得性能不是很重要,但是来自数据库其他列的值被频繁使用。

将这些大字符串存储到此表中与其他数据相同的行中(我将更频繁地访问)对我来说不是最佳选择吗?这会以某种方式损害性能吗?

我应该将这些大字符串存储在单独的表中吗?我只是不清楚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 回答