gpt4 book ai didi

mysql - 如何将多个查询组合到同一个表但不同的列中?

转载 作者:行者123 更新时间:2023-12-02 23:20:49 28 4
gpt4 key购买 nike

所以我正在使用两个表。

用户包括:ID名称城市

以下内容包括:用户(id)关注(id)

我正在尝试编写一个查询,该查询返回一个包含用户姓名、关注者姓名和关注者城市的表。我编写了这个查询,它返回正确的信息,但每行打印 8 次,我不知道为什么。

这是我的代码的链接 https://www.db-fiddle.com/f/aDPgZFknC1ybteWM6hwoFJ/3

FROM

(SELECT user.name
from follow, user
where follow.user = user.id) as NAME,

(Select user.name
from follow, user
where follow.follow = user.id) as FOLLOWER,

(select city
from user
right join follow
on user.id = follow.follow) AS CITY;

最佳答案

连接表时最好使用 JOIN 语法。您可以使用下表作为基础,并通过使用 JOIN 对其进行转换以显示您需要的信息。在以下示例中,您将 follow 与用户表连接两次以获取用户和关注者信息。

SELECT U.name, U2.name, U2.city
FROM follow AS f
JOIN user AS U
ON f.user=U.id
JOIN user AS U2
ON f.follow=U2.id;

关于mysql - 如何将多个查询组合到同一个表但不同的列中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59153514/

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