RT,现在有个需求,比如我查询1月8号的信息,发现有9条数据,但是这9条数据不可能是同一时间发的,所以现在的要求就是,1:00-2:00 之间的数据显示这里,2:00-3:00之间的数据显示到这里,一直到24小时,求sql语句,还有,就是请问下,页面如何显示呢?s:if?有更简单的方法么?本人在线等,谢谢

解决方案 »

  1.   

    那么请问下sql语句怎么写啊??
      

  2.   

    使用 sql 把符合条件的数据全部调出,然后在你的业务处理层里使用 JAVA 分批
      

  3.   

    先将数据全查出来  , 再在biz  判断是=1点 或=2点 ...  的分别放入集合  最后将集合放入一个集合 , 到action 后 把集合里德集合 分别存入request  页面  写 几个  遍历的标签 分时间段遍历即可   
      

  4.   

    24小时查询 是不是有点监听器的感觉 当某件事触发时 便执行该sql语句呢
      

  5.   

    建议使用nvl函数,之前用到过这类需求
      

  6.   

    SQL:
    select yourdatefield,DateName(hour,yourdatefield) as hour from your_table where CONVERT(VARCHAR(10),yourdatefield,120) = CONVERT(VARCHAR(10),'2010-01-15',120) order by yourdatefieldResult:yourdatefield                   hour
    -----------------------------------
    2010-01-15 00:13:19.347 0
    2010-01-15 07:24:10.897 7
    2010-01-15 08:25:15.153 8
    2010-01-15 08:26:13.917 8
    2010-01-15 08:29:20.270 8
    2010-01-15 08:30:18.080 8
    2010-01-15 08:48:25.590 8
    2010-01-15 09:28:34.677 9
    2010-01-15 09:40:57.547 9
    2010-01-15 09:55:34.413 9
    2010-01-15 10:23:20.507 10
    2010-01-15 11:28:44.790 11
    2010-01-15 11:48:00.987 11
    2010-01-15 12:40:54.277 12
    2010-01-15 13:08:12.253 13
    2010-01-15 13:23:16.940 13
    2010-01-15 13:32:04.917 13
    2010-01-15 14:49:29.643 14
    2010-01-15 15:46:13.983 15
    2010-01-15 15:59:33.337 15
    2010-01-15 16:27:55.247 16
    2010-01-15 17:56:45.897 17
    2010-01-15 18:49:54.297 18
    2010-01-15 19:33:37.103 19
    2010-01-15 20:01:50.840 20
    2010-01-15 22:23:22.180 22
    2010-01-15 23:00:21.803 23
    1、这是以2010-01-15为例,可以随意传日期字符串进去。
    2、额外生成了一个hour字段,就可以在逻辑层和展现层按时间段显示。
      

  7.   

    select hour(ddate),t.* from mytable t
    where date_format(ddate,'%Y-%m-%d')='2010-01-08'
    order by hour(ddate);