gpt4 book ai didi

SQL JOIN 多个表并获取 AVG

转载 作者:行者123 更新时间:2023-12-04 18:12:00 25 4
gpt4 key购买 nike

我正在尝试在我的 sql 查询中执行几个 JOINS,但遇到了问题。我需要做的是从 poker_sites 中选择所有字段然后从 networks 中获取 2 个相关字段如果可用,则从 editor_content 获得平均评分

我遇到的问题是查询只返回一行,而应该至少有三行。

任何帮助将非常感激。

这是我的 SQL

SELECT AVG(editor_content.rating) AS rating, poker_sites.*,
networks.network_name, networks.network_icon FROM poker_sites
LEFT JOIN networks
ON (poker_sites.network_id=networks.network_id)
LEFT JOIN editor_content
ON (poker_sites.site_id=editor_content.assign_id)
WHERE poker_sites.published=1

最佳答案

如果要使用聚合函数(在本例中为 AVG)获得多个结果,则需要 GROUP BY。

    SELECT x.avgRating AS rating, poker_sites.*,
networks.network_name, networks.network_icon
FROM poker_sites
LEFT JOIN networks
ON (poker_sites.network_id=networks.network_id)
LEFT JOIN
(
SELECT AVG(editor_content.rating) as avgRating, editor_content.assign_id
FROM editor_content
GROUP BY editor_content.assign_id
) x
ON (poker_sites.site_id = x.assign_id)
WHERE poker_sites.published=1

关于SQL JOIN 多个表并获取 AVG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12433749/

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