0

我有以下两个表,并想构建一个将匹配表之间的字段的选择查询:

 tablename       columnname           size  order
    employee        name               25    1
    employee        sex                25    2
    employee        contactNumber      50    3
    employee        salary             25    4
    address         street             25    5
    address         country            25    6

从这里我想构建查询

select 
        T1.name,
        T1.sex,
        T1.contactNumber,
        T1.salary,
        T2.street,
        T2.contry 
from tablename1[employee] T1,
     tablename2[address] T2

如何构造上面的查询,这里的表名可以Ncolumname可以也可以N

4

2 回答 2

2

您应该在表 2 中有一个外键列,以便您可以将其连接到表 1 上的 id。此外,您正在使用的查询将获取 cartisian 产品。

select 
    T1.name,
    T1.sex,
    T1.contactNumber,
    T1.salary,
    T2.street,
    T2.contry 
from tablename1[employee] T1
left join tablename2[address] T2 on T2.employee_id = T1.id
于 2012-09-03T09:41:16.890 回答
0

@Learner:在当前情况下,无法在表格之间进行交叉引用(谷歌:)foreign-key

您想要做的是向两个将被调用的表添加一个新列employee_id,然后您将能够通过以下方式获取数据:

select T1.*, T2.*
from employee T1, address T2
where T1.employee_id = T2.employee_id
于 2012-09-03T08:34:07.870 回答