我正想弄明白这项任务,但经过一次次的努力,我还是没能解决它。有更多sql经验的人能帮我吗?
我有三张table:
[
这项任务是计算每个去过萨尔茨堡餐馆的人的平均年龄。如果一个人去过萨尔茨堡的一家餐馆两次,就应该把它加到平均年龄上(本例中是艾米莉)。
由于短笛和斯特拉位于萨尔茨堡,总共有4次参观。
但是如何在sql中实现这一点呢?
我怎么计算访问次数?
感谢您的帮助。提前谢谢大家!
mysql版本:8.0.20,使用mysql workbench。
编辑4:
虽然@nick的答案也很棒,这就是为什么我接受他的答案是正确的。非常感谢大家和@nick!万一有人遇到同样的问题,我的最终解决办法是:
SELECT (AVG(age)) FROM PERSON INNER JOIN ISST ON PERSON.person_name = ISST.person_name INNER JOIN PIZZERIA ON ISST.pizzeria_name = PIZZERIA.pizzeria_name && PIZZERIA.stadt="Salzburg";
1条答案
按热度按时间xlpyo6sf1#
因为你想计算所有游客的平均年龄(不管一个人是否两次去同一个城市的比萨店),你可以
JOIN
你的访问表到比萨店和人表,并平均结果:输出:
在dbfiddle上演示