使用几个表 - SQL - Delphi

时间:2013-11-03 16:51:30

标签: sql delphi

我有:

表x:
密钥|名字|姓氏|电话|电子邮件|等。

表y:
密钥|全局编号|非常重要的信息,只能在y中。

与来自x的代码关联的y的全局编号,因此我可以使用全局编号从x中找到必要的信息。 第一次(当我使用TADOTable时)我可以使用Locate()获得必要的字段。现在我正在使用TADOQuery,我需要进行这样的SQL查询,它将返回这样的表,它将包含与x中的字段相关联的全局编号和字段。 有人可以给我这个查询吗?

P上。 S.我试图通过my-self进行此查询,但它没有用,因为我无法使用WHERE:WHERE x.Key=[y.Global number]。 我只是一个类型不匹配。

我做了什么!?

当我检查类型时,我发现,当我创建数据库时,我没有将默认类型(文本)更改为整数,所以当我从TADOTable使用它时,Delphi只是自动转换类型。

2 个答案:

答案 0 :(得分:3)

您没有说出您正在使用的SQL数据库。如果您的数据库支持它,您可以使用join语句:

select Key, GlobalNumber, FirstName, LastName, Phone, etc
from   x
join   y on y.GlobalNumber = x.Key
where  whatever

Key和GlobalNumber的数据类型是什么?

答案 1 :(得分:0)

您可能需要将匹配字段类型之一转换为另一个CAST(x.Key as)