当前位置:编程学习 > C#/ASP.NET >>

求一SQL语句

忘高手写一SQL语句或存储过程,实现这一要求:
test表中有两个字段date和minutes,两个字段一起确定一时间点
找出两个时间点之间的数据。
不知说的是否清楚,date和minutes结合起来为一天中的某一时刻,给定两个时刻找中间数据
感觉这样写不正确:select * from test where date>'20080618' and minutes>'3000' and date<'20080918' and minutes<'6000' --------------------编程问答-------------------- 应该可以吧 --------------------编程问答--------------------    你试试这个,不一定对哈!我也是个初学者!
    select * from test where (date bwteen 20080618 and 20080918) and (minutes bwteen 3000 and 6000)  --------------------编程问答-------------------- 这样写估计结果是不对的,可能找不到20080618和20080918之间小于3000和大于6000的数据 --------------------编程问答-------------------- 将分钟和日期组合成时间点后再比较,比如:select * from test where (date + ' '+ minutes)  >'20080618'+' 3000' and (date + ' '+ minutes)<'20080918' + ' 6000' --------------------编程问答-------------------- select * from test where date>'20080618' and minutes>'3000' and date <'20080918' and minutes <'6000'不对? --------------------编程问答--------------------
引用 4 楼 alina_rice 的回复:
将分钟和日期组合成时间点后再比较,比如:select * from test where (date + ' '+ minutes)  >'20080618'+' 3000' and (date + ' '+ minutes) <'20080918' + ' 6000'


同意此楼的意见。
select * from test where (date+minutes)>('20080618'+'3000') and (date+minutes)<('20080918' + ' 6000') --------------------编程问答-------------------- date 为日期型,minutes为整形吧.
selec * from test where dateAdd(n,minutes,date) >dateAdd(n,3000,'2008-9-18') and dateAdd(n,minutes,date)<dateAdd(n,6000,'2008-9-18').
--没有测试环境,呵呵,看一下dateAdd用法 --------------------编程问答-------------------- date和minutes都为int型,minutes的位数不确定,可能是0,可能是3000,也可能是145000
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,