gpt4 book ai didi

sql - 如何在内部查询列中使用外部查询列

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

我正在尝试在下面运行 postgresql 查询

SELECT *
FROM user_follow uf
INNER JOIN (SELECT uplr.post, COUNT(*)
FROM user_post_like_relation uplr
WHERE uplr.category = 'like' AND uf.recently_viewed < uplr.created_at . //CANNOT reference uf
AND clicked = true
GROUP BY uplr.post) uplr
ON uplr.post = uf.post
INNER JOIN post p ON uf.post = p.id

不幸的是,我无法在 INNER JOIN 查询中引用 uf 但我必须加入并在 JOIN 查询中引用 recently_viewed 列。有没有办法克服这个问题?

最佳答案

我认为在您的情况下,只需JOIN 到表并GROUP 结果以执行COUNT 就足够了。

SELECT uf.post, p.id, count(*)
FROM user_follow uf
JOIN post p ON uf.post = p.id
JOIN user_post_like_relation uplr ON uplr.post = uf.post
WHERE uplr.category = 'like'
AND clicked = 'true'
AND uf.recently_viewed < uplr.created_at
GROUP BY uf.post, p.id

使用 SELECTGROUP BY 列来获取您需要的列。

关于sql - 如何在内部查询列中使用外部查询列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51837398/

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