回答

收藏

SQL中的多数功能

技术问答 技术问答 276 人阅读 | 0 人回复 | 2023-09-12

我正在写一个SQL命令搜索表中的多数值(如果表中的值大于50%,该值将作为大多数返回)。例如,对于具有表中值的值Emp(name,age,dept):(32,33,45,45,455 u4 u( G) d& }$ ^; [
21,45)7 x+ p$ Q" a9 T) v7 W( n0 S+ J
因此,如果用户想要获得字段年龄的多数值,他们将操作以下命令:
  V7 U& c, u# _4 W: q1 u( [2 YSELECT majority(age) FROM Emp现在在后端,相应的生成SQL命令如下:  ?; E! C* x& C
SELECT age FROM Emp GROUP BY age HAVING COUNT(*) > ((SELECT COUNT(*) FROM Emp) / 2);查询返回45作为结果。+ E6 M! p/ _$ o( r$ v. w
但对于用户查询,例如:
, A+ V  |0 e' d4 F4 W  c" Y( GSELECT majority(age),dept FROM Emp GROUP BY dept然后,我不确定如何使用它group by功能创建类似的查询,还是其他查询?提前感谢
) H, H7 A% l+ y( H                                                                ( G  u* ?/ ^% J3 ]3 [
    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则