dateadd(day,-1,dateadd(mm,1,dateadd(day,-datepart(day,字段名)+1,字段名)))
解决方案 »
- 请问关于线程之Synchronize函数的问题
- 【100】如果用DELPHI使EXCEL中一列不可视
- quickreport怎么显示第几页/共几页啊?
- 在个公司一年多了!,工资还是一年前的700,我不想干了!因为穷!我不得不选择离开了!
- 再次请教:DELPHI6中有没有哪个函数能不能获取本机器的网卡类型名?(在线等待)
- TComboBox、TDBLookUpComboBox的两个问题。
- 菜鸟问题,见凉,free 和destroy有什么区别啊?
- 谁能说说下面的API,或者举些列子,让大家多了解一些
- 定时中断问题?
- delphi与Access BDE或 ADO连接的详细设置?
- ADOQUERY中如何使用参数
- SQL的提取问题
declare @DatTim dattime
declare @LastDT datetime
select @DatTim='2002-7-5'
select @LastDT=dateadd(day,-datepart(day,@DatTim),dateadd(month,1,@DatTim))
select @LastDT
你的方法是错误的,SQL SERVER版的前斑竹Yang_专门发了一个贴来更正这个问题,你可以找一下这个贴,在SQL SERVER版.declare @DatTim dattime
declare @LastDT datetime
select @DatTim='2002-1-31'
select @LastDT=dateadd(day,-datepart(day,@DatTim),dateadd(month,1,@DatTim))
select @LastDT结果:2002-1-28
更正:
指定日期加1个月为新日期1,新日期1减1个月为新日期2,新日期1与新日期2关于Day的Datediff,就是所求
DecodeDate(FDate, AYear, AMonth, ADay);
LastDate := EncodeDate(AYear, AMonth, 1) -1; ...... Query2.ParamByName('whereCondition1').AsDateTime
:= LastDate;如何?