sql - 查找拥有超过 1 个订单的学校

标签 sql sql-server

我想找出同一所学校有超过 1 个订单的所有学校。在下面的例子中,我想找到 2 号学校

| school_ucn    | order_no  |
-----------------------------
| 1             | 101       | 
| 1             | 101       | 
| 2             | 102       | 
| 2             | 102       | 
| 2             | 103       | 
| 2             | 103       | 

查询应该是这样的:

select 
    school_ucn, count(otc_order_number)
from storiacloud.schl_storia_revenue_fact
group by
    otc_order_number, school_ucn
having count(otc_order_number) > 1 

最佳答案

从你的groupby中取出订单号

select 
     school_ucn,count(DISTINCT otc_order_number) 
from 
   storiacloud.schl_storia_revenue_fact
group by 
    school_ucn 
having 
    count(distinct otc_order_number)>1 

关于sql - 查找拥有超过 1 个订单的学校,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33490174/

相关文章:

sql - LIMIT 1的替代方案,以提取日期范围以及前后的第一个条目?

mysql - 选择字符串直到字符串中的第一个或第二个空格

sql-server - 如何将数据库从 SQL Server 2008 导出到 SQL Server 2005

sql - 表中的计算列 'Month' 无法保留,因为该列是不确定的

c# - 在非常复杂的多任务窗体程序中锁定和使用 Entity Framework 上下文是否可以?

sql - 使用一个标签查找域?

mysql - 创建存储在元表中的报告值

sql - excel导入sql时数据转换错误

sql - 从关系代数到SQL

sql-server - 使用 LogParser 将 SharePoint 使用日志文件导出到数据库中