简体   繁体   English

内部和外部联接与三个表的mysql

[英]Inner and outer join with three tables mysql

Okey I'm trying to join some tables, but with no luck. Okey我正在尝试加入一些桌子,但是没有运气。 I manage to join them, but it shows duplicate!(?) 我设法加入他们,但显示重复!(?)

And as you can se in table two, column date, i want to sort the result with that. 正如您可以在表二中的列日期中看到的那样,我想对结果进行排序。 But again, no luck with the following query: 但同样,以下查询没有运气:

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

Below follows the table layouts and columns i want to query. 下面是我要查询的表布局和列。

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

uid in traning table is the user_id from users table, and type in training is type_id from traning_type. 训练表中的uid是用户表中的user_id,训练中的类型是traning_type中的type_id。

Help is much appreciated! 非常感谢帮助!

Your database diagram isn't correct 您的数据库图不正确

It should be : 它应该是 :

        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  

And your Query should be : 您的查询应为:

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM