回答

收藏

SQL中的多数功能

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

我正在写一个SQL命令搜索表中的多数值(如果表中的值大于50%,该值将作为大多数返回)。例如,对于具有表中值的值Emp(name,age,dept):(32,33,45,45,45" ~3 ~0 d4 u$ O* g) a
21,45)
9 i8 i& C9 u3 J  m3 O因此,如果用户想要获得字段年龄的多数值,他们将操作以下命令:
6 ?7 v! ?1 H& Z9 D$ m  `SELECT majority(age) FROM Emp现在在后端,相应的生成SQL命令如下:
, Q- \$ u4 P3 X) mSELECT age FROM Emp GROUP BY age HAVING COUNT(*) > ((SELECT COUNT(*) FROM Emp) / 2);查询返回45作为结果。
6 U4 ^5 I6 F1 b但对于用户查询,例如:& F1 P+ b! f9 i8 ~- g4 O
SELECT majority(age),dept FROM Emp GROUP BY dept然后,我不确定如何使用它group by功能创建类似的查询,还是其他查询?提前感谢7 p5 m9 k' w& K% S+ w6 r
                                                                8 E  p. J, e+ @7 E) J5 [" r
    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则