CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

日期的比较问题

楼主DIGITMAN9()2003-12-01 19:58:38 在 MS-SQL Server / 基础类 提问

我有一个表tbl_1  
  有一个字段 term   日期类(这是一个交租截止日期)  
  有内容  
  id       term  
  1       2003-12-01  
  2       2003-12-22  
  3       2004-01-11  
  4       2004-02-01  
  5       2004-3-1  
  6       2004-12-12  
     
  我想设置一个三个月的告警,即与今日比较,把租金还留有三个月的id   和 term  
      找出来  
  目前用了两个语句  
  一是  
  select   *   from   表名 where   cast(term   as   char(10))   between   cast(getdate()+90   as   char(10))   and   cast(getdate()   as   char(10))  
  没有反应,  
  二是  
  select   *   from   表名   where   datename(month,term)   between   datename(month,getdate())+3   and   datename(month,getdate())  
  发现这句对本年度有效,跨年就不行了  
   
  问题点数:0、回复次数:6Top

1 楼txlicenhe(马可)回复于 2003-12-01 20:07:53 得分 0

select   *   from   表名 where   term   between   convert(char(10),getdate(),120)  
  and   convert(char(10),dateadd(month,3,getdate()),120)  
  Top

2 楼zjcxc(邹建)回复于 2003-12-01 20:45:24 得分 0

select   *   from   tb1_1   where   datediff(month,term,getdate())>=3Top

3 楼zjcxc(邹建)回复于 2003-12-01 20:48:05 得分 0

上面的应该理解错了,楼主的意思是0~90天,还是0~3个月?  
   
  如果是前者,用:  
  select   *   from   tb1_1   where   datediff(day,term,getdate())   between   0   and   90  
   
  后者,用:  
  select   *   from   tb1_1   where   datediff(month,term,getdate())   between   0   and   3  
  Top

4 楼xiaoliaoyun(流浪的云)回复于 2003-12-01 20:53:25 得分 0

zjcxc(邹建)   的并不太正确吧  
  例如1月29到4月1日也会返回3,而实际上还没有到三个月Top

5 楼xiaoliaoyun(流浪的云)回复于 2003-12-01 20:54:33 得分 0

后面这个正确了,  
  ^_^Top

6 楼xiaoliaoyun(流浪的云)回复于 2003-12-01 20:55:55 得分 0

zjcxc(邹建)写的真快,果然是高手*_*(太崇拜了)Top

相关问题

  • 日期比较
  • 日期比较
  • 日期比较!
  • 日期比较
  • access中的日期比较
  • 日期比较问题
  • 日期比较问题
  • 日期数据的比较!
  • 日期比较问题
  • 日期比较问题

关键词

  • getdate
  • term
  • datename
  • 日期
  • datediff
  • 三个月
  • month
  • tb
  • cast
  • 表名

得分解答快速导航

  • 帖主:DIGITMAN9

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo