mysql的语句:
| 代码如下 | 复制代码 |
|
SELECT * FROM (SELECT * FROM testTable ORDER BY createDate desc) pcc GROUP BY name |
|
Mysql中在分组前先排好序就可以找到需要的记录了,返回的就是按照name分组后不重复的符合条件的第一条记录。
在sqlserver中有很好的解决办法,
| 代码如下 | 复制代码 |
|
select * from ( select id,name,counts,createDate,row_number() over(partition by name order by createDate desc) rn from testTable ) t where t.rn <=1 |
|
sqlserver 会有一点不错下面我看看
----------------------------------------------
--有id,name,createDate的一张表testTable
--根据name分组,获取每组中createDate最大的那条记录(整条)查询出来
----------------------------------------------
创建一张表,语句如下:
| 代码如下 | 复制代码 |
|
CREATE TABLE [dbo].[testTable] |
|
插入测试数据:
| 代码如下 | 复制代码 |
|
insert into testTable(id,name,counts,createDate) values(1,'A ',20,'01 14 2011 10:52PM') sql语句 |
|
select * from (
select id,name,counts,createDate,row_number() over(partition by name order by createDate desc) rn
from testTable
) t where t.rn <=1
deepin20怎么新增字体? deepin20安装字体的教程
Linux如何给文件权限? linux给文件添加可执行权限的技巧
deepin20桌面图标样式怎么修改? deepin更换图标主题的技巧
virtualbox打不开虚拟机怎么办? linux无法访问virtualbox的解决办法
deepin怎么注销系统? deepin系统注销与切换用户的方法
Manjaro linux怎么调鼠标速度? Manjaro鼠标设置光标速度的技巧