SQL按当天时间分组显示当天的所有记录

页面列表结果:按【当天时间】分组显示当天的记录
问:结合sql和程序逻辑怎么做
2014/1/1
field1 field2 field3
X X 2014-01-01 12:21:49
field1 field2 field3
X X 2014-01-01 1:21:49
-------------------------------------
2014/2/3
field1 field2 field3
X X 2014-02-03 12:21:49
--------------------------------

2014/5/1
field1 field2 field3
X X 2014-05-01 18:21:49
field1 field2 field3
X X 2014-05-01 12:21:49
field1 field2 field3
X X 2014-05-01 02:21:49
--------------------------

第1个回答  2014-06-09
Oracle直接用sql就可以
select .... from table where to_date(to_char(field3,'YYYY-MM-DD'),'YYYY-MM-DD')=to_date(to_char(sysdate,'YYYY-MM-DD'),'YYYY-MM-DD') group by field3

sql语句 如何分组后得到记录总数
或者 SELECT COUNT(*)FROM (SELECT distinct 分组字段 FROM 表)别名

sql 按照小时分组查询并统计
t2.[销售时间]) <= ISNULL(sv.number, 23) ) AS [累计实销]FROM master..spt_values sv JOIN #temp t ON (sv.number = DATEPART(hh, t.[销售时间]))WHERE sv.type='P' AND sv.number >=9 AND sv.number <20GROUP BY sv.number WITH rollupGO销售时段 ...

oracle SQL 取出每个分组的按照日期最新一条记录,同时还显示每个分组...
--用外链接把AA表和CC表链接起来查询就可以了SELECT AA.CODE, AA.NUM, AA.PRICE, CC.DATETIME, CC.SUMNUM FROM test AA --下面的BB表查询的是根据code分组查询num求和及最大datetime,之后作为一个表CC LEFT JOIN (SELECT BB.CODE, SUM(NUM) SUMNUM,MAX(BB.DATETIME) DATETIME FROM ...

如何用SQL语句批量查询某一时刻的用户数据?
这句可以理解为将结果集根据user_id分组,每组取time最大一条记录。这样就很好的实现了批量查询最近记录,并且仅仅需要遍历一次表,即使在数据量巨大的情况下也可以在很短的时间查出结果。

...查询记录根据人员考勤记录去重,当时只去重当天的,不同日期的可以重复...
用分析函数row_number() over (partition by ... order by ...)给记录进行分组编号,按人员id和考勤日期进行分组(如果考勤日期带时分秒,需先截断到日),按时间升序排序;这样,就得到人员ID在同一考勤日期下的编号值(编号值是从1开始的),然后,只取编号值为1的记录。SQL类似:select s.id, s....

sql如何分组选择显示最新的一条数据
其次,常用数据库比如Oracle和Sqlserver都有特定函数完成分组排序的功能,如果需要显示并列的情况可以用下面另外的2个.分别有3个类似函数:row_number() over 这个函数不需要考虑是否并列,哪怕根据条件查询出来的数值相同也会进行连续排名。也是最常用的函数,排序结果类似于1,2,3,4,5 rank() over 查出...

sql中根据表中一个字段分组分别统计每个分组的记录数
只要数据重复那么就有可能进行分组的查询操作,但是此时与之前的分组操作 不太一样,之前的分组是针对一张实体表进行分组的(emp,dept都属于实体表),但是对于以上的数据是通过查询结果显示的,所以是一张临时的虚拟表,但是不管是否是实体表还是虚拟表,只要是有重复,那么就直接进行分组 ...

sql语句实现分组统计
1、第一步,创建一个测试表,详细代码见下图,转到下面的步骤。2、第二步,执行完上面的操作之后,插入测试数据,详细代码见下图,转到下面的步骤。3、第三步,执行完上面的操作之后,在查询表中进行记录,纤细代码见下图,转到下面的步骤。4、第四步,执行完上面的操作之后,编写sql,对记录进行分组...

sql分类查询并将每个类别的所有记录显示出来
如根据部门分组 查询每个部门的平均工资 SQL> SELECT DEPTNO,AVG(SAL) FROM EMP GROUP BY DEPTNO;DEPTNO AVG(SAL)--- --- 10 2916.66666 20 2175 30 1566.66666

sql 分组统计,近一周每天的记录条数。
不知道你是什么库,,,给出sqlsever的方法 SELECT CONVERT(VARCHAR(10),time,120),COUNT(1) FROM dbo.test GROUP BY CONVERT(VARCHAR(10),time,120)

相似回答