内部和外部连接三个表mysql


Inner and outer join with three tables mysql

好的,我正在尝试加入一些表,但没有成功。我设法加入了他们,但它显示重复!(?)

正如你在表2中看到的,列日期,我想对结果。但同样,以下查询没有运气:

SELECT traning.uid, traning.type, traning.duration, users.user_id, users.user_name,traning_type.type_id, traning_type.name
FROM traning
INNER JOIN users
ON traning.uid=users.user_id
INNER JOIN traning_type
ON traning.type=traning_type.type_id

下面是我想要查询的表布局和列。

table one users
----
user_id user_name

table two training
----
id uid type min_puls medel_puls max_puls duration date

table three traning_type
----
type_id name

transing表中的uid是users表中的user_id,training中的type是transing_type中的type_id。

非常感谢您的帮助!

您的数据库图不是正确的

它应该是:

        table one users
        ----
        user_id user_name

        associative table(user_training)
        user_id tr_id min_puls medel_puls max_puls duration date
        table two training
        ----
        tr_id  type_name  

您的查询应该是:

SELECT training.type_name,users.user_id,users.user_name,
user_training.min_puls,user_training.medel_puls,user_training.max_puls,
user_training,duration, user_training.date
FROM training INNER JOIN user_training 
ON training.tr_id=user_training.tr_id
INNER JOIN users ON user_training.user_id=users.user_id