2014-05-17 114 views
1

我有一个表T1,其中包含其中包含列(A,B,C,D)其中A是PK。SQL查询,从多个表中获取数据和查询结果

我还有更多的表格。我想从这些表中获取一些数据。 我从这些表中获取数据,根据我的sql查询。 SQL查询(QUERY1)如下

select t3.col1 as A, t3.col4 as F, t4.col as H 
from t3, t4 
where t3.col1 = t4.col2; 

现在 我想从表T1及以上QUERY1结果数据。

select B , C , D , F, H 
from T1, Temp 
where t1.A = Temp.A; 

其中Temp是上述sql query1结果。

我该如何做到这一点?

有任何建议。

回答

0

我建议使用显式连接,如:

select t1.B, t1.C, ..., t3.col1 as A, t3.col4 as F, t4.col as H 
from t3 
join t4 
    on t3.col1 = t4.col2 
join t1 
    on t1.A = t3.col1; 
0

试试这个

SELECT t1.B as B, t1.C as B, t1.D as D, t3.col4 as F, t4.col as H 
FROM t1, t3, t4 
WHERE t1.A=t3.col1 AND t3.col1=t4.col2 
+0

query1可以是任何其他查询,从多个表中获取数据,在这里我只显示了2个表。 – atulya

0

使用内部连接

考虑这个exapmle

可以说两个表 第一个是“Orde R” 和 第二个是 “客户”

SELECT Orders.OrderID(TABLE_NAME.COLUMN_NAME),Customers.CustomerName(TABLE_NAME.COLUMN_NAME),Orders.OrderDate(TABLE_NAME.COLUMN_NAME) 从接单(第1表名) INNER JOIN客户(第二个表名) ON Orders.CustomerID = Customers.CustomerID(必须是匹配字段才能加入);