--有id,name,createDate的一张表testTable--根据name分组,获取每组中createDate最大的那条记录(整条)查询出来---------------------------------------------- 创建一张表,语句如下: CREATE TABLE [dbo].[testTable] ( [id] [int] NOT NULL IDENTITY(1, 1), [name] [nchar] (10) COLLATE Chinese_PRC_CI_AS N…
SELECT * FROM( SELECT id,name,counts,createDate,row_number() OVER(partition BY name ORDER BY createDate DESC) rowno FROM testTable ) t…
场景:sql server 2008 drop table ID CREATE TABLE ID ( id ,) not null, code int , D date, PRIMARY KEY (id) ) ,getdate()) ,getdate()) ,getdate()) ,getdate()) ,'2017-08-02') ,'2017-08-01') select * from ID 目标: select COUNT(*) from ID group by code 产生code列唯…
select gr,num,dt,(select bys from test where gr=b.gr and dt=b.dt) bys from ( select gr,count(0) num,max(dt) dt from test group by gr ) b //如果有重复项,可用如下语句(针对Mysql的limit,Oracle 可用 rownum<2) select gr,num,dt,(select bys from test where gr=b.gr and dt=b.d…
select  row_number() over(partition by  CODE order by SEQUENCE) as RowIndex  from Table 注:根据表的CODE 字段分组,组内根据SEQUENCE字段排序,生成序号 RowIndex…
原文:在论坛中出现的比较难的sql问题:16(取一个字段中的数字) 所以,觉得有必要记录下来,这样以后再次碰到这类问题,也能从中获取解答的思路. 问题:取一个字段中的数字http://bbs.csdn.net/topics/390647599 有一个字段是VARCHAR类型,其中包含了很多字符.但这些字符中有些是汉字,有些是数字,有些是一些特殊字符比如全角的括号'()'也有半角的括号'()'也有'/','-' 等,我想的是只留下数字,比如:(XX)123455那么就只保留123455 比如:中1…
如何用SQL排除重复结果只取字段最大值的记录?要求得到的结果(即是PID相同的记录只取ID值最大的那一条). select * from [Sheet1$] a from [Sheet1$] where PID=a.PID and ID>a.ID) select a.* from [Sheet1$] a inner join (select PID,max(ID) as max_id from [Sheet1$] group by PID) b on a.PID=b.PID and a.ID=b…
sql 分组后显示每组的前几条记录 如   表中记录是             code       serialno             A1               1             A1               2             A1               3             A1               5                 B1               2             B1               3…
原文:sql 分组后按时间降序排列再取出每组的第一条记录 竞价记录表: Aid 为竞拍车辆ID,uid为参与竞价人员ID,BidTime为参与竞拍时间 查询出表中某人参与的所有车辆的最新的一条的竞价记录 思路:通过aid分组,通过时间做降序排列,给每组数据加上行号(rowId)然后取出行号为1的数据,就是所要查询的数据 源数据: select * from auto_AuctionRecords 执行查询后的数据: select * from (select ROW_NUMBER()over(p…
public class T01 { public static void main(String[] args) { int j=4; j=j+=j-=j*=j; System.out.println(j); int i2=1; int i1=1; int i3=i2++;  int i4=++i1; System.out.println(i2 +"/"+ i3); System.out.println(i1 +"/" +i4); /** for 执行顺序 * f…