从我的sql中的三个表中获取数据

时间:2014-10-04 07:24:20

标签: mysql

我有三张桌子

  1. tbl_category
    • c_ID
    • cat_name
  2. tbl_subcategory
    • C_ID
    • catID tbl_category
    • sub_Name
  3. tbl_treatment
    • T_ID
    • tbl_subcategory 外键
    • treat_Name
  4. 现在我想获取这样的数据:

    treat_Name sub_Name cat_name where subID = 1001
    

    请帮我解决这个问题。

3 个答案:

答案 0 :(得分:0)

您只需JOIN三个表:

SELECT c.treat_Name, 
       b.sub_Name,
       a.cat_name
FROM   tbl_category a,
       tbl_subcategory b,
       tbl_treatment c
WHERE  a.c_id = b.catid
AND    b.c_id = c.subid
AND    c.subid = 1001

答案 1 :(得分:0)

使用INNER JOIN来解决这个问题

SELECT c.treat_Name, 
       b.sub_Name,
       a.cat_name
FROM   ((tbl_category a INNER JOIN tbl_subcategory b 
       ON a.c_ID = b.catID)
       INNER JOIN tbl_treatment c
       ON b.catID = c.subID)
WHERE  c.subID = 1001

答案 2 :(得分:0)

他们在下面:

SELECT c.treat_Name, 
       b.sub_Name,
       a.cat_name
       FROM   tbl_treatment c  inner join tbl_subcategory b
       on  b.c_id = c.subid
       inner join 
       tbl_category a
       on a.c_id = b.catid          
       where    c.subid = 1001