有3个表
表:tb_Keyword字段 : keyword_id,keyword_name
表:tb_Knowledge字段:knowledge_id,knowledge_name
表:tb_ref_keyword_knowledge(以上两表的关联)
字段:keyword_id,knowledge_id我想写一个sql语句完成以下功能:通过keyword_name查询到tb_knowledge表中所有符合keyword_name的tb_Knowledge记录 请高手帮忙,谢谢!

解决方案 »

  1.   

    SELECT a.keywork_name,b.knowledge_name 
    FROM tb_Keyword as a
    LEFT JOIN tb_ref_keyword_knowledge as c on c.knowledge_id = a.keyword_id
    LEFT JOIN tb_Knowledge as b on b.knowledge_id = c.knowledge_id
      

  2.   

    楼上漏了where条件,加上:
    SELECT c.* FROM tb_Keyword as a
    LEFT JOIN tb_ref_keyword_knowledge as c on c.knowledge_id = a.keyword_id
    LEFT JOIN tb_Knowledge as b on b.knowledge_id = c.knowledge_id
    where a.keyword_name='??'
      

  3.   

    select c.*
    from tb_Keyword a 
    join tb_ref_keyword_knowledge b on a.keyword_id=b.keyword_id
    join tb_Knowledge c on b.knowledge_id=c.knowledge_id
    where a.keyword_name='value'
      

  4.   

    为什么要用left join ?SELECT c.* FROM tb_Keyword as a
    inner JOIN tb_ref_keyword_knowledge as c on c.knowledge_id = a.keyword_id
    inner JOIN tb_Knowledge as b on b.knowledge_id = c.knowledge_id
    where a.keyword_name='??'