group by字段后,其他字段的合并处理

今天做题碰到Group by 的问题有点犯迷糊,记录下。

题目:

错误答案:

正确答案:

select * from table1 where FID in
(
    select FID from table1  group by FID having count(Distinct Fno) >=2
)

使用了group by 之后,就要求select后面的字段包含在group by 或聚合函数里面,

如此题如果想取到FID的不同记录,就需要在外面再嵌套一层循环

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
groupby多个字段合并,是数据分析中常用的操作之一,通过将多个字段的数据进行分组,然后对相同的分组进行合并,可以得到更加细致的数据统计结果。 比如说,在一个销售数据表中,除了按照地区分组,还可以按照时间、产品类型等其他维度进行分组,得到更加详细的销售数据汇总结果。这样,我们就可以更加清楚地了解不同地区、不同时间、不同产品类型间的销售情况,为决策提供更有利的依据。 在实际操作中,我们可以使用pandas库中的groupby函数来实现多个字段合并操作。首先,需要将要分组的字段作为groupby函数的参数传入,然后使用agg函数指定要进行合并的计算方法。如果需要对不同的字段进行不同的计算操作,可以使用字典类型的数据结构来进行指定,如下所示: ``` import pandas as pd data = pd.read_csv('sales.csv') result = data.groupby(['region','year','product_type']).agg({ 'sales_amount': ['sum', 'mean'], 'order_count': 'sum' }) print(result.head()) ``` 以上代码将按照地区、时间、产品类型对数据进行分组,并对销售额进行总计与平均值计算,对订单数进行求和计算,并将结果显示在屏幕上。 需要注意的是,在使用groupby进行多个字段合并操作时,需要理清各个字段之间的依赖关系,并根据实际情况进行合并计算,以得到更加全面准确的数据汇总结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值