Sql 如果多个经理来自同一城市,则显示经理详细信息

Sql 如果多个经理来自同一城市,则显示经理详细信息,sql,oracle-sqldeveloper,Sql,Oracle Sqldeveloper,我有一个表经理(managerid、姓名、地址、城市、电话)。如果多个经理来自同一个城市,我必须显示城市、姓名和电话详细信息。 我的代码是: 选择m.city、m.name、m.phone 来自m经理 按m.name分组 计数(m.city)>1; 但这显示了第一行中的一个错误,即“不是表达式分组”。 请帮忙 一个简单的方法使用存在: select m.* from manager m where exists (select 1 from manager m2

我有一个表
经理(managerid、姓名、地址、城市、电话)
。如果多个经理来自同一个城市,我必须显示城市、姓名和电话详细信息。 我的代码是:

选择m.city、m.name、m.phone
来自m经理
按m.name分组
计数(m.city)>1;
但这显示了第一行中的一个错误,即“不是表达式分组”。

请帮忙

一个简单的方法使用
存在

select m.*
from manager m 
where exists (select 1
              from manager m2
              where m2.city = m.city and m2.managerid <> m.managerid
             );

这很有效,非常感谢!但是你介意我问一下第二段代码的解释吗?@yaminir。它使用一个窗口函数(Oracle称之为分析函数)。
select m.*
from (select m.*, count(*) over (partition by city) as cnt_city
      from manager m
     ) m
where cnt_city > 1;