2013-06-03 72 views
0

所以我有2個表,租戶&業主。所有者表具有主鍵ID,並且租戶表具有owner_id以關聯哪個擁有者擁有哪個公寓。sql查詢返回基於主鍵的結果?

執行搜索時,需要使用哪種查詢從租戶和所有者表中獲取信息並將結果返回給多個文本框?

+0

你想要什麼樣的價值爲你的複選框? –

+1

我編輯過你的標題。請參閱:「[應該在其標題中包含」標籤「](http://meta.stackexchange.com/questions/19190/)」,其中的共識是「不,他們不應該」。 –

回答

0

編寫兩個查詢,返回兩個結果集並進行相應的解析。

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 

當然,使用您的字段名稱。

+0

爲什麼你推薦兩個查詢? –

+0

所以你有兩組數據可以使用 - 這就是你需要的。所有者和租戶是兩種不同類型的數據。業主可能有很多租戶,但這是他們共同分享的唯一事情。我的樣品只是一個樣品。如果你以其他方式去選擇業主,然後列出他的租戶呢?例如,如果您有一個查詢,並且執行了select * joining這兩個表,則所有者數據將在每個帶有租戶信息的返回記錄集中重複。這不是一個好設計。 – TheGeekYouNeed

1

我相信你正在尋找SQL聯接。基於它們之間的公共字段(owner_id),連接用於合併來自兩個或多個表的行。

0

不確定你正在使用什麼,但是如果你使用的是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 
         { 
          ....... 
         }; 
0
select * from tenants t 
join owner o on o.ownerId = t.ownerId 
where t.name = 'name' 

從中選擇任何列你的實際需要。

0

你可能會尋找類似

SELECT * FROM dbo.tbl_Tenants 
INNER JOIN dbo.tbl_Owners ON dbo.tbl_tenants.ownerId 
WHERE ownerName = 'Joe Bloggs' 

,但需要更多地瞭解你想提供更多的幫助的信息。

如果你只是希望所有的信息都形成表然後@TheGeekYouNeed提供瞭解決方案