MS Access 使用 Group By 进行舍入精度

2024-01-01

为什么员工每个月的平均得分相加后不等于员工(曾经)的平均得分?

Average

SELECT Avg(r.score) AS rawScore
FROM (ET INNER JOIN Employee AS e ON ET.employeeId = e.id) INNER JOIN (Employee AS a INNER JOIN Review AS r ON a.id = r.employeeId) ON ET.id = r.ETId
WHERE (((e.id)=@employeeId))

Returns 80.737


按月平均

SELECT Avg(r.score) AS rawScore, Format(submitDate, 'mmm yy') AS MonthText,  month(r.submitDate) as mm, year(submitDate) as yy
FROM (ET INNER JOIN Employee AS e ON ET.employeeId = e.id) INNER JOIN (Employee AS a INNER JOIN Review AS r ON a.id = r.employeeId) ON ET.id = r.ETId
WHERE (((e.id)=@employeeId))
GROUP BY month(r.submitDate), year(submitDate), Format(submitDate, 'mmm yy')
ORDER BY year(submitDate) DESC, month(r.submitDate) DESC

Returns

Average Score : Month 
81.000 : Oct 09 
80.375 : Sep 09 
82.700 : Aug 09 
83.100 : Jul 09 
75.625 : Jun 09 

我知道 80.737 是正确的,因为我已经手工统计了记录并计算了平均值。但该表的平均值(小数点后 3 位)为 80.56,相差太远。 group by 是否会扰乱每一步的舍入?


平均值的平均值不会返回与所有值的单个平均值相同的结果,除非所有平均组具有相同数量的项目。

如果每个月的员工 rawScore 数量不同,那么您的结果将会出现偏差。

考虑这个例子:如果我们计算数字 1 到 10 的平均值,则平均值为 5.5。

计算 1 到 5 的平均值为 3,计算 6 到 10 的平均值为 8。两组都有 5 项,因此 3 和 8 的平均值 = 5.5。

但是,如果将第一个平均值设为 1 和 2 = 1.5,将第二个平均值设为 3 到 10 = 6.5,则平均值 1.5 和 6.5 得出 4。这是有偏差的,因为第一组有 2 个项目,第二组有 8 个项目。

除此之外,罗伯特·哈维还指出了舍入的累积效应。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MS Access 使用 Group By 进行舍入精度 的相关文章

  • SSD 上的 MySQL 基准测试:工具和策略

    我目前正在将我的服务器从在硬盘驱动器上运行 MyISAM 切换到在 SSD 上运行 InnoDB 我有一个3 800 000 行 16GB 表作为基准表 我的服务器设置 Ubuntu 64 Nginx MySQL 5 5 我心里有两件事我想
  • 安卓。是否可以在 C/C++ 上编写自定义函数并在 SQL 查询中使用它?

    SQLite3不支持存储过程 是否可以在 C C 上编写自定义函数并在 SQL 查询中使用它 类似的东西 SELECT FROM table WHERE CUST FUNCTION name1 name2 1 or SELECT CUST
  • 如何获取行数据绑定事件中单元格的值?以及如何检查单元格是否为空?

    我正在使用 sqldatasource 和GridView 我想从 GridView 中获取单元格的值RowDataBound事件 因为我不能使用e RowIndex 如果单元格为空 如何检查 updatetng 事件 我用了if null
  • 如何在 MariaDB 或 MySQL 中创建文本类型的外键?

    我有两张桌子 CREATE TABLE first table my id TEXT 6 NOT NULL content VARCHAR 30 NOT NULL PRIMARY KEY my id 6 Engine InnoDB char
  • 如何列出表外键

    有没有办法使用 SQL 列出给定表的所有外键 我知道表名称 架构 我可以将其插入 您可以通过 information schema 表来完成此操作 例如 SELECT tc table schema tc constraint name t
  • 原则 2 使用 LIKE 进行查询

    我有这个查询代码 repository em gt getRepository AcmeCrawlerBundle Trainings query repository gt createQueryBuilder p gt where p
  • 64位Java无法通过ODBC访问32位MS Access数据库

    我有一台新的 64 位笔记本电脑 并安装了 STS 64 位和 Java 64 位 我正在尝试创建到 32 位 Microsoft 数据库的 ODBC 连接 但是默认的管理工具不提供访问驱动程序 经过谷歌搜索后 我发现 C Windows
  • 尝试计算盒子的分数时小数精度损失

    我有一个场景 我有一个包含 3 个罐头的标准盒子 出于显示和查询的目的 我必须以其标准配置的十进制数量进行报告 不可能说1盒3罐 1盒2罐 等等 例如 最初我会有1盒3罐然后我移除 1 个罐子 结果是0 66 循环盒 3 罐然后我再移除 1
  • 如何创建针对不同渠道不同的数据库序列?

    我们有一个要求 即需要为不同的渠道维护不同的数据库序列 例如 ABC SQN1 XYZ 1 序列号需要根据通道递增 有没有办法我们可以实现它 Thanks 你的问题不清楚 请更详细地描述要求 我知道你想要一些序列并有条件地增加它们 这样 c
  • 有没有办法刷新 Oracle 中 PL/SQL 的输出?

    我有一个从 shell 脚本中调用的 SQL 脚本 需要很长时间才能运行 目前它包含dbms output put line不同点的声明 这些打印语句的输出会出现在日志文件中 但仅在脚本完成后才会出现 有什么方法可以确保脚本运行时输出出现在
  • Sql查询增加多个项目的项目价值价格

    我想编写 Sql 查询来按百分比增加商品价格 场景是 在表中 我有 3 列 ID 商品名称 价格 Example If item Name is T shirt Increase price by 10 item Name is Jins
  • ISDATE 相当于 DB2

    我有一个包含字符格式日期的表 我想检查日期的格式 请让我知道如何在 DB2 中做到这一点 我知道有一个函数 ISDATE 但它在 DB2 中不起作用 我在 AS400 上使用 db2 作为日期基础 请帮助我 实际上 看起来 DB2 for
  • 在Django中通过ManyToMany关系添加一个对象

    Django 的 ManyToMany 字段 https docs djangoproject com en dev ref models fields django db models ManyToManyField可以使用填充my fi
  • 如何在Oracle中获取每周数据

    我制作了一个矩阵报告 其中需要根据选择参数动态显示列 我有一个日期选择参数 如果我在选择参数上选择日期为 03 01 2010 2010 年 3 月 1 日 那么它应该显示为 3 月 1 日 3 月 7 日 这取决于你追求什么 如果您在接下
  • SQL LIKE 实际上是如何工作的

    例如 当我有这样的字符串时 ABBBCSLAK JDK ASAAAAFJKDSKJFSDF 当我像这样使用 SQL 时 SELECT FROM table WHERE column LIKE JDK 当服务器访问 JDK 时到底会发生什么
  • 即使为空也显示值

    我正在使用以下内容显示过去 7 天内添加的产品计数 即使 COUNT 0 我是否可以以某种方式定制查询以显示过去 7 天的所有产品 查询现状 SELECT DAYNAME dateadded DAY COUNT COUNT FROM pro
  • 是否有一个sql条件可以查找列中的非整数?

    基本上我想要一个像这样运行的 select 语句 SELECT FROM table WHERE column IS NOT INT 是否存在这样的条件或者如何检查 nvarchar 10 列中的非整数 In SQL Server你可以做
  • Oracle TO_DATE 函数中跳过字符

    我正在导入 tsv 中具有 SQL Server 格式日期的数据 yyyy mm dd hh24 mi ss mmm 使用 SQL Developer 的导入数据向导导入 Oracle 数据库 我怎样才能忽略 mmm用于将它们导入 DATE
  • 计算给定小时内使用了多少分钟

    给定开始和结束时间 我想知道给定时间内有多少分钟 create function CalcMinsInHour start datetime end datetime hour int returns int as begin Lookin
  • 不允许在 MS Access 中创建或更改记录

    我已经阅读了有关上述问题的大量帖子 但没有一个答案能够解决问题 我的问题是两个表使用 ID 字段 也是主键 相互链接 以一对一的关系 当我尝试在主表中输入记录时 不知道 Access 是否知道这是主表 出现以下错误 You cannot a

随机推荐

  • 为什么我的 Azure 移动服务不接受 ADAL.js 发送的不记名令牌?

    我使用带有隐式流的 ADAL js 来验证 AngularJS 应用程序 以便能够访问 Azure 移动服务 API 我已在 AMS Azure 移动服务 的 身份 选项卡中设置 Azure AD 身份信息 如下所示 应用程序 URL 设置
  • 使屏幕闪烁以提醒用户

    使用 NET 3 5 Winforms 我如何使整个屏幕在红色和白色之间闪烁 闪烁一秒钟 我有一个大屏幕 仅用于显示受监控设备的状态 我希望它在用户应该查看的事件发生时闪烁作为通知 谢谢 使用 tbischel 的建议 这是计时器的一些示例
  • 有效地复制/复制/备份数据库表 - mysql

    Reason 我被分配运行一些脚本来推进一个网站 这是一个梦幻足球网站 该网站的多个实例位于不同的域中 有些拥有超过 8 万用户 每个用户应该拥有一个由 15 名玩家组成的团队 因此 某些表具有 No users x No players
  • 使用 JavaScript 检查/取消检查无线电输入

    我有一个无线电输入组 如果选中了某个收音机 然后我再次单击它 它将变为未选中状态 有没有办法获取收音机以前的状态onClick event
  • 动态添加刻度标记?

    我想知道是否有任何方法可以在渲染图形后动态添加scale x标记 也许通过像这样的函数 zingchart exec myChart addscalexmarker type line range 14 label text label y
  • 从绝对路径获取流?

    我有这个方法 public RasImage Load Stream stream 如果我想加载一个像这样的网址 string url http localhost Application1 Images Icons hand jpg 我怎
  • ASP.NET MVC 的 Windows Azure 存储模拟器连接字符串?

    我正在搜索需要定义才能使用 Windows Azure 存储模拟器的连接字符串 到目前为止 我找到的所有消息来源都表明这些连接字符串应该转到ServiceDefinition and ServiceConfiguration文件位于 Win
  • NSDictionary 的 objectForKey: 依赖于同一性还是相等性?

    假设我有一个名为Person拥有以下财产socialSecurityNumber 并且这个类覆盖了isEqual 当社会保障号属性相等时返回 true 的方法 并说我已经放了一堆实例Person进入一个NSDictionary 如果我现在实
  • Angular CLI (7.0.5) 用于开发和生产的不同资产?

    是否可以使用 Angular CLI 7 0 5 使用不同的资产进行开发和生产 对于生产我想要资产 assets projects example src favicon ico 为了发展我想要资产 assets projects exam
  • Python 将日期时间小时设置为特定时间

    我试图将日期定为昨天晚上 11 30 这是我的代码 import datetime yesterday datetime date today datetime timedelta days 1 PERIOD yesterday strft
  • 外部混洗:从内存中混洗大量数据

    我正在寻找一种方法来整理内存不适合的大量数据 大约 40GB 我有大约 3000 万个可变长度的条目 存储在一个大文件中 我知道该文件中每个条目的开始和结束位置 我需要对内存中不适合的数据进行洗牌 我想到的唯一解决方案是对包含以下数字的数组
  • 在 bash 脚本中运行 tail -f 特定时间

    我需要一个可以运行一系列的脚本tail f命令并将它们输出到文件中 我需要的是为了tail f运行一定的时间来 grep 特定的单词 之所以是一定时间 是因为其中一些值不会立即显示 因为这是实时日志 我怎样才能运行这样的东西 比如说 20
  • 引用 LSF 作业数组中的作业索引

    我试图将作业数组中作业的索引作为参数传递给另一个 bash 脚本 numSims 3 numTreatments 6 uses numTreatments top rows of parameters csv maxFail 10 j 1
  • 如何获取 apache kafka 中的所有主题?

    RequestMapping value getTopics method RequestMethod GET ResponseBody public Response getAllTopics ZkClient zkClient new
  • 触发点击事件在 IE10 中不起作用[重复]

    这个问题在这里已经有答案了 我需要添加onclick事件到图像 因此当我单击图像时 它将触发文件打开对话框 但在 IE10 下不起作用 button on click function upload trigger click upload
  • 创建适合以下参数的假数据集:N、平均值、标准差、最小值和最大值

    有没有办法创建一个适合以下参数的假数据集 N 平均值 标准差 最小值和最大值 我想创建一个包含 187 个整数比例分数的样本 其平均值为 67 标准差为 17 观察值在 30 210 范围内 我正在尝试演示有关统计功效的概念课程 并且我想创
  • C语言如何跳过文件的前两行?

    我是 C 编程新手 我很困惑如何跳过文件中的前两行 我尝试使用fgets and fscanf 但我不知道该怎么做 假设我有一个文件txt像这样 1 Username Test 2 Password 12345 3 4 那么如何从第 3 行
  • 在 Linux 上用 C++ 移动文件的更快方法

    我正在尝试使用 C 在 Linux 上移动文件 问题是 源文件和目标文件夹可能位于不同的分区 所以我不能简单地移动文件 好的 我决定复制该文件并删除旧文件 bool copyFile string source string destina
  • 非阻塞 tun/tap 文件描述符上的 read() 收到 EAGAIN 错误

    我想从非阻塞 tun tap 文件描述符读取 IP 数据包tunfd我设置了tunfd作为非阻塞并在 libevent 中为其注册 READ EV 事件 当事件触发时 我先读取前20个字节来获取IP头 然后 阅读其余部分 nr bytes
  • MS Access 使用 Group By 进行舍入精度

    为什么员工每个月的平均得分相加后不等于员工 曾经 的平均得分 Average SELECT Avg r score AS rawScore FROM ET INNER JOIN Employee AS e ON ET employeeId