【发布时间】:2014-03-24 13:51:33
【问题描述】:
我很难解释,但我会尝试。
我有一个 mysql 表,其中有一个名为“inventory”的字段,它是一个项目数组。我需要计算这个数组中不同项目的数量。我的问题是我的游戏中的玩家在这个数组中放入了太多的项目,这会导致问题。
这是一个例子:
[[["NVGoggles","Mk_48_DZ"],[3,10]],[["ItemBandage","Skin_Sniper1_DZ"],[2,34]],[["DZ_Backpack_EP1"],[1] ]]
此数组应计为 5 个项目。在这种情况下,每个项目的数量无关紧要。 NVGoggles、Mk_48_DZ、ItemBandage、Skin_Sniper1_DZ、DZ_Backpack_EP1
空数组示例:
[[[],[]],[[],[]],[[],[]]]
我需要脚本:
从instance_deployable 中选择库存,其中 deployable_id = 16
计算每一行的库存数组。
如果计数大于 50 个不同的项目,则更新行的库存。
我不知道如何使用 MySQL 或 Perl 脚本来计算数组。
【问题讨论】:
-
嗯,你如何准确地存储数组? SQL 没有这种类型的概念……。您是否将其存储为字符串?
-
是的字符串。我在这里有点不合时宜。
-
什么是主键?
-
id 是主键。如果有帮助,我可以发布结构。
-
您是否希望以某种特定方式更新库存?或者只是删除项目,直到它不再超过 50?