2013-12-18 109 views
1

我正在尽我所能解释问题。我们有5个表格M1,M2,M3,M4,M5,毕竟我们在所有表格中只有一个公共字段M_ID。 M_ID也会有不同的值。所以我的要求是一次检索与个人M_ID相关的记录。用于从数据库中的多个表中检索数据的SQL语句

例如:如果我有M_ID值为1,2,3,4等,那么对于每个SQL选择我需要检索记录只有一个M_ID值。

M1 Table: M_ID,F1,F2 
M2 Table: M_ID,F3,F4 
M3 Table: M_ID,F5,F6 

F *是可重复多次的字段。所以我也需要关心数据冗余。每个表格包含10个以上的字段,所以我可以使用Select *?

回答

0

试试这个,

SELECT M1.F1,M1.F2 
     M2.F3,M2.F4, 
     M3.F5,M3.F6 
FROM M1 INNER JOIN M2 ON M1.M_ID = M2.M_ID 
     INNER JOIN M3 ON M1.M_ID=M3.M_ID 
WHERE M1.M_ID = @ID_PARAM 

等..(我这样做只是从您的问题3个表)

+0

您好感谢您的答复......我可以能够检索记录仅与一个单独的M_ID有关? – user3115214

+0

是的..看我更新的答案。只需在上面的查询中传递想要重新激活记录的id值代替'@ ID_PARAM' – Rohaan

+0

M_ID值应该是动态的......我将此查询放置在一个界面中,它将被自动化...... – user3115214

相关问题