在多表之间将匹配列和条件合并在一起

时间:2019-05-28 19:23:33

标签: mysql

所以我有点复杂。

我有一个包含多个表的架构。我正在尝试在表格之间收集信息。

例如。

Table 1

    character_infos

col

    character_id , name

Table 2

    character_skills

col

    character_id, skill_id, active_skill_level

我正在尝试通过角色ID,技能ID以及活动技能水平是否小于数字将所有这些信息合并到一个表中。

但是,我迷失了自己。

我认为我可以像程序员一样使用它,只使用和语句即可,但是显然不能。

我目前可以使用的东西只能从角色ID中提取,而不能按skill_id进行定义。

SELECT character_id, skill_id, active_skill_level 
FROM character_skills 
WHERE character_id = 92692957 AND active_skill_level =< 4;

我从这里去哪里?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

无论如何都不是专家,但您以前曾穿过鞋子。从我可以看到,您的表只有两个“ character_id”共有的字段。在此列上,您可以尝试进行INNER JOIN。

这是一个可以帮助您前进的例子。

SELECT      character_infos.name,
            character_skills.active_skill_level 
FROM        character_skills 
INNER JOIN  character_skills
ON      character_infos.character_id = character_skills.character_id
WHERE       character_infos.character_id = 92692957 
AND         character_skills.active_skill_level =< 4;