2014-06-20 33 views
0

我最近有這樣的措辭是這樣的一個面試問題:如何根據用戶是否有多行來選擇用戶?

從用戶適用於多種業務,並具有在企業中的至少一個薪水超過90000用戶表中選擇的所有用戶。

其中每行代表一個用戶。一些用戶有多行(當他們爲多個企業工作時),每個都有一個businessId。

我對SQL還很陌生,在編寫應用程序代碼時我做了很多基本的selectupdate聲明,但我不確定如何去做這件事。我是否應該使用count來確定一個用戶是否有多行?我不知道如何使用where條款來檢查薪水。

回答

3

由用戶分組(例如名稱)。然後,您可以使用having子句在組中執行集合操作 - 這意味着對於每個用戶

select username 
from users 
group by username 
having count(distinct businessId) > 1 
and max(salary) > 90000 
+0

謝謝!我認爲我搞砸了,因爲我認爲我需要一個where子句。 –