我正在尝试创建一个模拟数据库,显示三个独立游戏角色的设备数据。当我运行以下SQL时,我能够提取完整的表
SELECT customerID, characters.characterID, characterName, headName, chestName, legsName, armsName
FROM characters
JOIN character_equipmentv ON characters.characterID = character_equipment.characterID
JOIN gear_head ON character_equipment.headID = gear_head.headID
JOIN gear_chest ON character_equipment.chestID = gear_chest.chestID
JOIN gear_legs ON character_equipment.legsID = gear_legs.legsID
JOIN gear_arms ON character_equipment.armsID = gear_arms.armsID
ORDER BY characterID
然而,当我添加SUM
函数来获取角色的齿轮核心时:
SUM(gear_head.gearScore + gear_chest.gearScore + gear_legs.gearScore + gear_arms.gearScore) AS gearScore
在我的SELECT语句结束时,它只显示第一个带有每个字符的组合齿轮组的条目!我该如何解决这个问题?
答案 0 :(得分:1)
查看SQL Grouping。
好的:SUM
是一个聚合函数,需要GROUP BY
子句才能根据另一列产生有意义的结果。
答案 1 :(得分:0)
SUM
是一个聚合函数,这意味着需要多行并合并它们。
您的SQL会告诉您所有characterID的所有齿轮分数的总和
如果您希望给定字符ID的总和添加GROUP BY characterID
到查询的末尾。