gpt4 book ai didi

MYSQL - 在单个查询中查询多个用户的评分平均值

转载 作者:行者123 更新时间:2023-11-29 08:29:02 25 4
gpt4 key购买 nike

我正在建立一个网站,其中一方面涉及教师并对教师进行评分。评分是由学生做出的,当学生寻找老师时,我希望他们能够通过包含平均评分来过滤老师的标准之一。

每个老师的每个学生的每个评分都会将他们对老师评分的星星数量放入数据库中。我已经有一个查询可以计算每个老师的平均星级

    SELECT AVG(star) AS Average FROM rating_table WHERE  type = 'Member_review' 
AND teacher_id = id_number

其中 id_number 显然是老师的 user_id。

当人们在所有教师的搜索页面上时,我希望他们能够通过评级等标准来过滤教师。我可以将此查询放在 foreach 循环中,并让它运行每个教师 ID,但我怀疑这会对服务器造成巨大的拖累 - 有没有办法让我将一串逗号分隔的 ID 放入查询并找到每个人的平均评分?我确实尝试过这个查询,但它不起作用

    SELECT AVG(star) AS Average FROM rating_table WHERE  type = 'Member_review' 
AND teacher_id IN(1,2,3, etc...)

有没有一种方法可以让查询获取每个教师 user_id 的平均值并输出类似这样的内容?

    Average     Teacher ID
3.5 6
4.6 2

最佳答案

是的。这是一个基本的聚合查询:

SELECT AVG(star) AS Average, teacher_id
FROM rating_table
WHERE type = 'Member_review' and
teacher_id IN(1,2,3, etc...)
group by teacher_id

关于MYSQL - 在单个查询中查询多个用户的评分平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17159289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com