如何使用Access sql组合查询

时间:2014-06-04 17:50:44

标签: sql ms-access-2010

我有一张如下表格,我试图选择1个系列EID,即1001,1002,1003,1004,1005和2个系列EID作为单独的查询

     EID     PCNum

     1001     8.6
     1002     10
     1003     9
     1004     8
     1005     7
     2001     4
     2002     1
     2003     2
     2004     3
     2005     6  
     3001     8
     3002     0
     3003     7
     3004     4
     3005     4  

查询合并如下

     EID     PCNum   EID     PCNum    EID     PCNum

     1001     8.6    2001     4       3001     8
     1002     10     2002     1       3002     8
     1003     9      2003     2       3003     8
     1004     8      2004     3       3004     8
     1005     7      2005     6       3005     8

如何在sql查询中指定?有什么建议?我尝试了UNION,但是给出了一些错误。

1 个答案:

答案 0 :(得分:1)

通常情况下,你会有一个列将EID与系列分开,只留下001,002等值。

在这种情况下,您可以JOIN自身数据+1000倍的序列号。像这样:

SELECT 
    t1.EID, t1.PCNum,
    t2.EID, t2.PCNum,
    t3.EID, t3.PCNum
FROM 
    table_name t1
    INNER JOIN table_name t2 on t1.EID+1000 = t2.EID
    INNER JOIN table_name t3 on t1.EID+2000 = t3.EID
WHERE t1.EID BETWEEN 1000 AND 1999
ORDER BY t1.EID