急:
JAVA中使用Oracle数据库 用SQL语句查询,数据库中有时间字段
想实现的功能:
从最早的记录开始,查询每天每8(也可以是其他值)小时内的数据,直到时间最后的一条记录。
不知道描述清楚了没谢谢了

解决方案 »

  1.   

    select 
      case when ...
      case when ...
      ...,
      count(1)
    from tb 
    group by  
      case when ...
      case when ...
      ...
      

  2.   


    SELECT *
    FROM TB
    WHERE DATEPART(HH,DATE) >=0 AND DATEPART(HH,DATE) <8
    UNION ALL
    SELECT *
    FROM TB
    WHERE DATEPART(HH,DATE) >=8 AND DATEPART(HH,DATE) <16
    UNION ALL
    SELECT *
    FROM TB
    WHERE DATEPART(HH,DATE) >=16 AND DATEPART(HH,DATE) <=24这样???
      

  3.   

    http://topic.csdn.net/u/20090906/17/a91cd31e-abf7-4190-8486-c5491aa63c71.html这个就能实现你的需求
      

  4.   

    select
       日期,
       max(case when datepart(hh,时间) between 0 and 7 then 数据 else 0 end) as '0:00-8:00 ',
       max(case when datepart(hh,时间) between 8 and 15 then 数据 else 0 end) as '8:00-16:00 ',
       max(case when datepart(hh,时间) between 16 and 24 then 数据 else 0 end) as '16:00-24:00 '
    from
       tb
    group by
       日期
      

  5.   

    谢谢楼上各位 但是问题还是没解决
    SQL 输入查询语句datepart(hh,filetime)时提示ora-00904 “datepart”无效的标识符
    还有5楼链接里的帖子我看了下,不太懂。
    能否麻烦各位在给我解答一下,如果方便,请加我qq:839095685 
      

  6.   

    oracle没有datepart函数,换to_date,具体请查API