2011-08-03 61 views
1

我在這裏遇到了一些棘手的問題,我在這裏得到了一些很好的幫助,所以我想讓你們看看,看看這是否可能。MySQL - 加入2個表格和組值

我在MySQL兩個表..公司和資源......

的公司可以有多個資源..所以...

company 
-------- 
companyId (primary/auto inc) 
companyName 

resources 
--------- 
resourceId (primary/auto inc) 
companyId 
resourceName 

我想查詢兩個表,並組會這樣的結果是這樣的......

例...

Company Name 
ResourceName1 
ResourceName2 
ResourceName3 
Company Name 
Resource Name4 
Resource Name5 
Company Name3 
Resource Name6 

等。

希望有道理..任何幫助,非常感謝。

更新

確定以幫助闡明這個更好一點......

我需要每家公司都拉上了在運營商表,然後使用該companyId,用它來拉一切資源在同一companyId資源表...

因此名單是這樣的......

Bob's Plumbing (aka Company name) 
    Bob the Plumber (has CompanyId of Bob's Plumbing) 
    Bob's Assistant (has CompanyId of Bob's Plumbing) 
Joe's Roofing (aka Company name) 
    Joe the Roofer (has CompanyId of Joe's Roofing) 

etc ..等等...

希望能清除一些混亂。

回答

2

我可以suggets這個查詢 -

編輯

SELECT 
    c.companyName, 
    GROUP_CONCAT(CONCAT(r.resourceName, ' ', r.resourceFirstname, ' ', r.resourceLastname) SEPARATOR '\r\n') 
FROM 
    company c 
JOIN 
    resources r 
    ON c.companyId = r.companyId 
GROUP BY 
    c.companyId; 

注意,該公司的名稱和它的資源將在一排。

+0

你能不能告訴我如何與一個以上的領域從資源表(即r.resourceFirstname r.resourceLastname) –

+0

是的,有可能用這個。我修改了查詢。 – Devart

0
select companyName,GROUP_CONCAT(resourceName) from company,resources where company.companyId=resources.companyId;