mysql排序函数问题
本帖最后由 q1577271837 于 2022-11-2 21:52 编辑使用排序函数根据表中的did对表排序,为啥会排出三个一样的,不是应该按照大小顺序排列吗(这里的图片不是根据did排序的,但是排序的结果是一样的 都是这样) 你可以看一下mysql窗口函数的语法 https://dev.mysql.com/doc/refman/8.0/en/window-functions-usage.html “If OVER() is empty, the window consists of all query rows and the window function computes a result using all rows. Otherwise, the clauses present within the parentheses determine which query rows are used to compute the function result and how they are partitioned and ordered” 如果你要使用窗口函数 进行排序的话最好在 over() 中 加入 分区条件或者 排序条件 你这三行代码哪个都没排序好吧??
你图2大概是数据冗余了吧,不知道,你多显示几列不就找到问题了嘛 over(partition by cno order by degree ) 如果在partition结果上聚合,千万注意聚合函数是逐条累计运行结果的!而在group by后的结果集上使用聚合函数,会作用在分组下的所有记录上 是不是软件问题,我用的workbench还没遇到这种重复的情况{:1_904:}
页:
[1]