转载自:https://blog.csdn.net/shiyong1949/article/details/78482737 在mysql中使用group by进行分组后取某一列的最大值,我们可以直接使用MAX()函数来实现,但是如果我们要取最大值对应的ID,那么我们需要取得整行的数据.最开始的实现方法如下 SELECT t.event_id,MAX(t.create_time) as create_time from monitor_company_event t GROUP BY t.com
示例 Product 表结构: 示例 Product 表数据: 想要的效果是,以 GroupName 字段分组,取出分组中通过 Sort 降序最新的数据,通过示例数据,可以推算出结果数据的 ID 应该为:7.5.3. 示例 SQL 代码: select * from Product p where ID=(select top 1 ID from Product where p.GroupName=GroupName order by Sort desc) order by Sort desc
在工作中使用到的分析函数主要有两种,一个是sum () over (partition by ……order by ……)另外一个就是 lead(lag)over (|partition by|order by ) sum不用多说,主要就是按照partition by 内的字段,分别合计,返回若干行,而不是像group by那样只返回一行. lead(lag)是按照order by 的排序方式,在partition by 内的范围内,向下(上)查询N条记录. 一个简单的例子: with tmp
一.用户 1.介绍 我们都知道linux中有root用户和普通用户,但是同样是普通用户,为什么有些用户的权限却不一样呢?其实这就类似于我们的QQ群,root用户就是QQ群主,他拥有最高的权利,想干什么就干什么,其他人都是普通用户,某一天,群主看这个小伙子不错,于是群主给了一些权限这个小伙子,于是这个小伙子就成了QQ群的管理员,这个小伙子就比其他用户多了一些权限. 注意:root用户需要慎用,尤其是rm命令,必须慎用!!!因为root能把自己给搞死... 2.关于用户的一些命令 1. id id