Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 返回最高dif和关联用户名的SQL查询_Mysql_Sql - Fatal编程技术网

Mysql 返回最高dif和关联用户名的SQL查询

Mysql 返回最高dif和关联用户名的SQL查询,mysql,sql,Mysql,Sql,SQL和stackoverflow的新特性 我一直在尝试拼凑一个查询,根据其中一列中行间的最高dif从两列返回值 我在wordpress中有一个mysql表: id用户id用户名周跳跃高度目标高度。。。。。。还有其他一些 这是一个为期四周的培训计划。我需要查询以查找第1周和第2周之间的最高跳跃高度增加(然后是第1周和第3周,以及第1周和第4周-作为单独的查询)。我需要返回第1周和第2周之间最大正差值的值,以及与该值关联的人员的用户名 这就是我能够拼凑的: SELECT username,

SQL和stackoverflow的新特性

我一直在尝试拼凑一个查询,根据其中一列中行间的最高dif从两列返回值

我在wordpress中有一个mysql表:

id用户id用户名周跳跃高度目标高度。。。。。。还有其他一些

这是一个为期四周的培训计划。我需要查询以查找第1周和第2周之间的最高跳跃高度增加(然后是第1周和第3周,以及第1周和第4周-作为单独的查询)。我需要返回第1周和第2周之间最大正差值的值,以及与该值关联的人员的用户名

这就是我能够拼凑的:

SELECT username,
       SUM(CASE week When '2' THEN jumpheight
                     WHEN '1' THEN -jumpheight
           END) AS value
FROM blitzclipper
GROUP BY userid
对于最大的差异,它返回正确的差异跳跃高度值,但是它返回1)最大的负值和正值,以及2)用户名列中的第一个用户名,而不是与最大差异关联的人员的用户名


非常感谢您的帮助。thnx

请显示
blitzclipper
表的示例数据,以及理想情况下您希望获得的输出。您通常按所选列分组,这些列不是集合函数的参数。在您的例子中,
groupbyusername
@jarlh-mysql在这方面有点灵活(我认为这是一个mis功能)。@GurV,较新的mysql版本更严格,如果groupby无效(除非在兼容模式下)。@jarlh-同意,但人们出于某种原因再次禁用它。我见过有人问MySQL更新版本的问题,但仍在这样做。他们应该一次性删除此禁用功能。:)