gpt4 book ai didi

mysql - GROUP_CONCAT 的替代方案?多个连接到同一个表,不同的列

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

我什至不确定这里的术语是否正确。 MySQL 新手,或多或少。

给定几个定义如下的表:

    CREATE TABLE users 
( user_id int(11) NOT NULL auto_increment
, name VARCHAR(255)
, pri_location_id mediumint(8)
, sec_location_id mediumint(8)
, PRIMARY KEY (user_id)
);

CREATE TABLE locations
( location_id mediumint(8) NOT NULL AUTO_INCREMENT
, name varchar(255)
, PRIMARY KEY (location_id)
)

我正在尝试执行查询以一次性获取用户名以及主要和次要位置。

我可以得到这样一个:

SELECT u.name AS user_name, l.name as primary_location FROM users u, locations l WHERE u.primary_location_id=l.location_id

但是我对在一个查询中获取这两者的正确语法一无所知。

最佳答案

SELECT u.name AS user_name, l1.name as primary_location , l2.name as secondary_location
FROM users u
JOIN locations l1 ON(u.pri_location_id=l1.location_id)
JOIN locations l2 ON(u.sec_location_id = l2.location_id);

关于mysql - GROUP_CONCAT 的替代方案?多个连接到同一个表,不同的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21195481/

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