【发布时间】:2012-12-19 22:36:21
【问题描述】:
示例数据:
╔════╦════════════╦════════════╦═══════╦══════════ ═╦════════╗ ║ ID ║ 开始 ║ 停止 ║ 用户 ║ 文件 ║ 大小 ║ ╠════╬════════════╬════════════╬═══════╬══════════ ═╬════════╣ ║ 1 ║ 1330133409 ║ 1330133410 ║ user1 ║ file1.zip ║ 300000 ║ ║ 2 ║ 1330133409 ║ 1330133410 ║ user1 ║ file2.zip ║ 300500 ║ ║ 3 ║ 1330133409 ║ 1330133410 ║ user2 ║ file1.zip ║ 300000 ║ ║ 4 ║ 1330133409 ║ 1330133410 ║ user2 ║ file2.zip ║ 300500 ║ ║ 5 ║ 1330133409 ║ 1330133410 ║ user1 ║ file3.zip ║ 500000 ║ ║ 6 ║ 1330133409 ║ 1330133310 ║ user6 ║ file3.zip ║ 500000 ║ ╚════╩════════════╩════════════╩═══════╩══════════ ═╩════════╝我需要创建一个 MySQL 查询来计算 PER_USER_AVERAGE_BANDWIDTH where PER_USER_AVERAGE_BANDWIDTH = SUM(SIZE) / (STOP - START),然后按 PER_USER_AVERAGE_BANDWIDTH 排序以产生如下结果:
一清二楚;)有人吗?
【问题讨论】:
-
+1 为可爱的布局。自从 Paradox for Dos 2.0 以来还没有见过这种东西
-
您显示
user1、user2和user6的数据 - 结果集中的user3来自哪里?另外,您如何SUM(SIZE)(多行)但在(STOP - START)中只使用一行?user1共有三行 - 您希望哪一行用于计算的那部分? (是的,我意识到在这种情况下STOP和START对于所有三行都是相同的值,但是数据库在解析 SQL 时并不知道。) -
@TonyHopkinson:那应该是我的 +1!悲伤的脸;)仅供参考sensefulsolutions.com/2010/10/format-text-as-table.html
-
@eggyal,+ 1 以确保您获得荣誉。 :)
标签: mysql