在Query的SQL中,我想查询一个月内每天某一个小时内的记录,如何做?(50分)

  • 主题发起人 pingbaoshi
  • 开始时间
P

pingbaoshi

Unregistered / Unconfirmed
GUEST, unregistred user!
表中内容如下:
num start_time traffic block switch
1 2001-11-12 1:00:00 0.2 0.4 0.7
2 2001-11-12 2:00:00 0.3 0.2 0.5
3 2001-11-12 3:00:00 0.6 0.7 0.3
4 2001-11-12 4:00:00 0.7 0.7 0.4
..........................
25 2001-11-13 1:00:00 0.6 0.7 0.3
26 2001-11-13 2:00:00 0.1 0.3 0.6
27 2001-11-13 3:00:00 0.4 0.2 0.3

.........................
49 2001-11-14 1:00:00 0.6 0.7 0.3
...................
我想统计出几天内每天1:00:00 的数据,列到DBGrid中,如何做?


 
菜鸟建议;
要不用copy函数截取字符串
要不在库结构里把日期和时间分开[:D]
 
select * from tablename
where convert(varchar(20),start_time,108)='1:00:00'
 
用like行不行?
定义一个结构式
 
select * from youtable
where convert(varchar(8),start_time,108)='1:00:00'
看看帮助吧,CONVERT的第一个参数是转换后的长度,
第二个参数是要转换的源;
最后一个参数是转换格式;
 
萧大虾:
怎么出错:
Invalid use of keyword。
Token:varchar(20),start_time,108)='1:00:00'
 
无效的关键字??你什么数据库呀
我那代码是在SQL SERVER用的
 
declare @TM datetime

Set @TM = :T

Select *
From Test
Where
D >= :StartDate and D < :EndDate and
(D - Cast(D as int)) = (@TM - Cast(@TM as int))
在SQLServer上测试通过,@TM去掉直接用:T会出错
 
数据库是oracle
现在又出现了个 '无效的表达式'错误,
我在SQL中是这样写的:
select * from Tb_traffic where convert(varchar(20),start_time,108)='1:00:00'
 
oracle不支持这convert
应该有同样的函数,写法不同而已
方法一样
 
ORACLE sql语句
select * from tb_traffic where to_char(start_time,'hh24:mi:ss')='01:00:00'
 
windwy,
果然是的!
谢谢各位
 
悲酥清风,老子跟你没完!

要么你向老子赔礼道歉,要么你不做分版主!否则老子天天发贴!
就算这里的版主取消老子的5415帐号,老子换个ID再进来跟你没完!
你他妈的算老几!老子的帖子也是你傻B小子顺便可以结束的吗?

何况这次帖子老子根本没有讲一句脏话!只不过内容和DELPHI无关而已!
***,前几天这里的“卷起千堆雪”(还是分版主呢)也不是照样
乱发无意义的贴?你他妈的怎么不擅自结束他的帖子?

更何况这次老子的贴的内容还是有点意思的!

老子可是从来不发什么“庆祝生日啦”等等无意义的帖子的,而且老子
也不破坏论坛规矩,老子每次来总能带给这里的朋友于欢笑和喜悦!
你他妈的的擅自结束老子的帖子,算什么意思?

你不向老子赔礼道歉,老子天天骂你,天天发贴骂你!老子是破罐破摔,
老子怕谁?我操你妈!

大家注意了:这次事情完全是由“悲酥清风”引起的!老子骂人也是他这个
傻B引起的,大家要怪就怪他!老子本来已经改邪归正了,但是悲酥清风又
胡乱/擅自结束老子的帖子!不尊重老子的成果,蔑视老子的人格!

所以老子也没有必要顾忌他的人格!老子还有更难听的话没有骂呢!
 
kao
5415
go out! 混账!
 
多人接受答案了。
 

Similar threads

I
回复
0
查看
728
import
I
I
回复
0
查看
760
import
I
I
回复
0
查看
953
import
I
顶部