如何在我的sql中使用存储过程从所有表中获取所有记录

时间:2014-04-17 05:42:48

标签: java mysql

表A: -

  a_id(p_k) | data1 | data2 
    1         xxx      yyy  
表B: -

  b_id(p_k) | bbb1 | bbb2  
    1         xxx     yyy

表C: -

   c_id |  cc1 | ccc2 |a_id (F_K-Table A)  | b_id (F_K-Table B) 
     1      xx   yy     1                      1

问题 - 我想要这样一个存储过程来获取A表,B表,C表中存在于C表中的所有数据......

我有A,B,C的Java实体......  在C表中,我使用了ManyToOne for A.  在C表中,我使用了ManyToOne for B.

2 个答案:

答案 0 :(得分:1)

试试这个:使用inner join

SELECT 
A.data1,A.data2,
B.bbb1,B.bbb2,
C.cc1,C.cc2
FROM TABLE A
INNER JOIN TABLE C
ON A.a_id =C.a_id 
INNER JOIN TABLE B
ON B.b_id=C.b_id

答案 1 :(得分:0)

你需要加入

SELECT A.*,B.*,C.*
FROM tableA A
INNER JOIN tableC C
ON A.a_id =C.a_id 
INNER JOIN tableB B
ON B.b_id=C.b_id