所以我有 2 张桌子,租户和业主。Owners 表有一个主键 id,tenants 表中有一个 owner_id 来关联哪个所有者拥有哪个公寓。
执行搜索时,需要什么样的查询才能从租户和所有者表中获取信息并将结果返回到多个文本框?
我相信您正在寻找 SQL 连接。连接用于根据两个或多个表之间的公共字段 (owner_id) 组合来自两个或多个表的行。
您可能正在寻找类似的东西
SELECT * FROM dbo.tbl_Tenants
INNER JOIN dbo.tbl_Owners ON dbo.tbl_tenants.ownerId
WHERE ownerName = 'Joe Bloggs'
但是需要更多地了解您想获得哪些信息才能提供更多帮助。
如果您只想要两个表中的所有信息,那么@TheGeekYouNeed 提供了解决方案
编写两个查询,返回两个结果集,并进行相应的解析。
declare @ownerid int
select firstname, lastname, address, etc, @ownerid = ownerid from Tenants where firstname = 'Joe' and lastname = 'Blow'
select firstname, lastname, address, etc from Owners where ownerid = @ownerid
当然使用您的字段名称。
select * from tenants t
join owner o on o.ownerId = t.ownerId
where t.name = 'name'
从那里选择您实际需要的任何列。
不确定您使用的是什么,但如果您使用的是 Telerik,这里有一些 C# 代码可以进行连接,并且应该检索包含您需要的数据类型。
CustomDataType cType = from t in context.orm.Tenants
join o in context.orm.Owners on t.owner_id equals o.ID
select new CustomDataType
{
.......
};