假设我有一个叫做播放器的表
profileid, player
和一个名为bank
的表id, profileid, player, item
假设我有以下player
table player: [1, verro]
让我说我有5个这样的人进入银行:
table bank: [1, 1, verro, "gold bar"]
table bank: [2, 1, verro, "gold bar"]
table bank: [4, 1, verro, "gold bar"]
table bank: [5, 1, verro, "snake"]
如何使用以下条件构建查询?:
选择名为verro的玩家然后总结他有多少金条?
结果应为:["verro", 3]
我试图这样做:
select *, count(item) from player_deposit bank
join player_attributes pa on bank.player = pa.player
where LOWER(bank.player) = "verro" && bank.item = "Gold Bar"
但对我不起作用,而且很慢。
答案 0 :(得分:1)
因为您需要的所有信息都在银行表格中,所以您不需要加入。只需运行如下查询:
SELECT player, COUNT(id)
FROM bank
WHERE player = 'verro' AND
item = 'gold bar'
你应该得到你需要的东西。事实上,您的表格设置方式,播放器表格与银行表格中的信息是多余的。