我对这个mysql练习有一个问题,有没有人能帮我让它显示我想要的所有记录,因为现在它只从列中获取一个值 tytul
它给出了整个表中的最大值、最小值和平均值,而不是将它们分开,然后计算每个表中的最大值、最小值和平均值 tytul
```
SELECT
filmy.tytul,
FORMAT(MIN(wypozyczenia.data_zwrotu-wypozyczenia.data_wypozyczenia),1) AS "min",
FORMAT(MAX(wypozyczenia.data_zwrotu-wypozyczenia.data_wypozyczenia),1) AS "max",
FORMAT(AVG(wypozyczenia.data_zwrotu-wypozyczenia.data_wypozyczenia),1) AS "sre",
COUNT(wypozyczenia.id_kopii) AS "Razy"
FROM filmy
,wypozyczenia
,kopie
WHERE (filmy.id_filmu=kopie.id_filmu AND wypozyczenia.id_kopii=kopie.id_kopii)
1条答案
按热度按时间qncylg1j1#
基本上,您的查询缺少
GROUP BY
条款末尾:您还应该使用标准的显式联接(与
ON
关键字)而不是老式的隐式连接(在from
条款);最后,我建议使用表别名来缩短查询并使其更具可读性:请注意,我删除了列别名周围的双引号;在mysql中,您需要对标识符使用backticks,或者更好的是,使用与sql关键字不冲突的标识符,因此不需要引用。