试图连接两个表但无法连接

时间:2011-09-27 14:05:16

标签: mysql

我做了更复杂的查询,我很难过。

表:

STEPS (id, rank, description) 
ELEMENTS (element, element_id, year_code)

表格与STEPS.id = ELEMENTS.element_id where ELEMENTS.year_code = 2010

相关

我想通过step检索rank,但是需要检查元素表以确保我拉出相应的步骤,因为可能有两个具有相同排名的步骤,但这就是year_code发挥作用的地方,同年没有重复的排名。

所以我想查看step

 where steps.rank = 1.2.4 and elements.year_code = 2010

感谢任何帮助

步骤表包含所有步骤,元素表会跟踪步骤所属的年份。

2 个答案:

答案 0 :(得分:1)

我没有链接字段,因此我只想使用elements.step_id链接字段。
将查询调整为您的字段名称。

SELECT s.*
FROM steps s
INNER JOIN elements e ON (e.steps_id = s.id)
WHERE s.rank = '1.2.4' AND e.year_code = '2010'

或者你的意思是:

SELECT s.*
FROM steps s
INNER JOIN elements e ON (e.steps_id = s.id)
WHERE s.rank IN ('1','2','4') AND e.year_code = '2010'

答案 1 :(得分:1)

SELECT s.id, s.rank, s.description
    FROM STEPS s
        INNER JOIN ELEMENTS E
            ON s.id = e.element_id
    WHERE s.rank = '1.2.4'
        AND e.year_code = 2010