2017-05-29 292 views
-3

我有以下表格,我希望找到擁有最多工人的公司。我相當新的SQL,我想在構建查詢一些幫助。任何簡報將讚賞哪些關鍵字使用或如何開始寫入查詢。我想如何構建SQL查詢以查找哪家公司擁有最多員工?

「查找具有最多員工的公司。」

工人(WORKER_NAME,城市,街道)

爲(WORKER_NAME,COMPANY_NAME,薪水)

公司工作( COMPANY_NAME,市)

管理(WORKER_NAME,manage_name)

+2

到目前爲止你做了什麼?向我們展示一些努力 – Ezio

+0

到目前爲止,我做到了這一點,但我確實被卡住了,不知道如何完成它。 選擇公司名稱 從工作對於T 其中(SELECT COUNT(工人名字) 從工作對於s 其中T.CompanyName = S.CompanyName) > – dazoar

回答

0

這將讓你的公司,在它的大多數員工。

select top 1 company_name, 
     count(*) as nbr_of_employees 
from work-for 
group by company_name 
order by 2 desc 

如需更詳細的解答,請將樣品數據添加到您的問題和預期結果中。

它是如何工作的:
group by company_name將使用相同的company_name togheter對所有記錄進行分組。因爲count(*)會給你每組工作記錄的數量。 (因此,對於每個公司全體職工)

order by 2 desc將確保該公司名稱與大多數員工是在列表的頂部

最後,top 1在選擇將只返回第一個記錄該名單

+0

我其實只需要該公司是列表最擁擠的公司名單,而不是所有擁有員工編號的公司名單。 – dazoar

+0

@dazoar好的我編輯了我的答案 – GuidoG

+0

我很好謝謝你的回答。如果你能夠詳細解釋它是如何工作的,我會非常高興。這對我來說並不是直截了當,因爲我是一個新手。 – dazoar