情况是这样,
现在我有两个字段,一个是news_starttimr和news_closetime 存放新闻显示的开始时间和结束时间
我只会见简单点的SQL语句
我这样写显示不出数据
select top 9 news_title,news_starttime,news_closetime from eaat_news
where class_id1 in(select class_id from eaat_class where parentid=6) and News_State=1
and getdate() in(select datediff(day,news_starttime,news_closetime))
order by news_istop desc,news_tj desc,news_addtime desc我想要的结果是,服务器的当前时间 如果在这两个字段之间,就显示新闻标题,不在就不显示。
感谢牛人们帮帮忙 ,谢谢
现在我有两个字段,一个是news_starttimr和news_closetime 存放新闻显示的开始时间和结束时间
我只会见简单点的SQL语句
我这样写显示不出数据
select top 9 news_title,news_starttime,news_closetime from eaat_news
where class_id1 in(select class_id from eaat_class where parentid=6) and News_State=1
and getdate() in(select datediff(day,news_starttime,news_closetime))
order by news_istop desc,news_tj desc,news_addtime desc我想要的结果是,服务器的当前时间 如果在这两个字段之间,就显示新闻标题,不在就不显示。
感谢牛人们帮帮忙 ,谢谢
where getdate() between news_starttimr and news_closetime
where class_id1 in(select class_id from eaat_class where parentid=6) and News_State=1
and getdate() news_starttime and news_closetime
where class_id1 in(select class_id from eaat_class where parentid=6) and News_State=1
and getdate() between news_starttime and news_closetime
用case when 来做
top 9 news_title,news_starttime,news_closetime
from
eaat_news
where
class_id1
in
(select class_id from eaat_class where parentid=6) and News_State=1
and
getdate() between news_starttime and news_closetime
where class_id1 in(select class_id from eaat_class where parentid=6) and News_State=1
and getdate() between news_starttime and news_closetime
order by news_istop desc,news_tj desc,news_addtime desc
2009-12-12 00:00:00 2009-12-31 00:00:00
2009-12-12 00:00:00 2009-12-31 00:00:00
2009-12-12 00:00:00 2009-12-31 00:00:00
2009-12-12 00:00:00 2009-12-31 00:00:00
2009-12-12 00:00:00 2009-12-31 00:00:00
2009-12-12 00:00:00 2009-12-31 00:00:00
2009-12-12 00:00:00 2009-12-31 00:00:00
2009-12-12 00:00:00 2009-12-31 00:00:00
2009-12-12 00:00:00 2009-12-31 00:00:00
这是我不带那个条件查出来的时间段
例如:
declare @dt as datetime
set @dt = getdate()--
在存储过程中这样写,其他@dt为传进去的值.
select top 9 news_title,news_starttime,news_closetime from eaat_news
where class_id1 in(select class_id from eaat_class where parentid=6) and News_State=1
and @dt between news_starttime and news_closetime
order by news_istop desc,news_tj desc,news_addtime desc
谢谢了 between and就可以解决了.
是同事把测试服务器的时间改的缘故,我说怎么查不出来数据,还在改本地时间,自己晕乎了。