加入2个mysql表

时间:2012-06-29 17:18:46

标签: php mysql

我有2张桌子

表技能

id | skill
----------
1 | skill 1
2 | skill 2
3 | skill 3

第二个表user_skills,其中user_skills.skill_1 = skills.id(1)AND user_skills.skill_2 = skills.id(2)AND user_skills.skill_3 = skills.id(3)

id | user_id | skill_1 | skill_2 | skill_3
------------------------------------------
1  | 3       | 2       | 4       | 5

我需要这样的输出:

skill 1 -- 2
skill 2 -- 4
skill 3 -- 5

我尝试了左连接,但没有结果。欢迎任何帮助。

Omeri

2 个答案:

答案 0 :(得分:4)

嗨您不应将值组存储为表中的列或列中的值组。这违反了数据库设计的第一范式,并会在错误的地方回来咬你。

您的用户技能表应如下所示:

id | user_id | skill
------------------------------------------
1  | 3       | 2
2  | 3       | 4
3  | 3       | 5

答案 1 :(得分:0)

在第一个表格(技能)中,我有id-s的onli技能名称。在第二个表中我有用户技能水平。 skill_1与技能表中的技能ID 1相等。所以我需要输出所有技能和用户技能水平

技能名(来自第一张表) - 技能等级(来自第二张表)

omeri。