我有两张桌子
trips_数据,如tripid、userid、species(int)、killcount
具有物种id和物种的主物种(字符串)
我想找回一份旅行中看到的所有物种的名单
我希望得到
sum(killcount) : tripid :species (string):species (int)
57 300 rabbit 1
2 300 foxes 2
1 300 squirels 8
等等
我有下面的查询,它返回我想要的所有东西,除了总和(killcount)大约是8000,而它应该是57。
任何帮助都会非常感激
SELECT sum(trips_data.killcount),
trips_data.species,trips_data.spceces,
masterspecies.species
from trips_data
join masterspecies
WHERE tripid=$tripid
AND userid=1
AND NOT killcount=0
最佳答案
这是笛卡尔连接:
from trips_data join masterspecies
这将为两个表中的每个记录组合返回一条记录。这通常不是目的。连接条件如下所示:
from trips_data
join masterspecies
on masterspecies.species_id = trips_data.species_id
这将匹配记录,并且只返回匹配的记录,因此有可能您的总和将正确得出。