我对使用 MySQL 还很陌生,我试图了解在我的数据库中存储玩家库存物品的最有效方法是什么。
所以这里是设置:
有一个名为'player'的表,每个玩家都被分配了一个唯一的 'playerid',它被设置为表的主索引。
每个玩家的库存中最多可以有 24 件物品,这些物品的信息存储在一个名为'player_inventory'的表中。此表具有以下字段:
playerid、slotid、uid、堆栈、用途、耐用性
'uid'是项目的 id,而'stack'、'uses'和'durability'只是每个项目需要的值(例如,不同插槽中的相同类型的项目可能具有较低的 'durability')。
问题是,我无法在库存表中的“playerid”上设置索引,因为每个玩家最多有 24 个插槽条目,并且其他字段都不能保证是唯一的。
所以我担心当这个表有 10000 个玩家的库存时,当我去查询它时,这个表中可能有 240,000 个没有索引的条目 - 有什么告诉我这可能非常慢?
我对如何优化我的数据库知之甚少,非常欢迎任何建议。