日期操作getdate()得到当前时间,可以设置得到各种时间格式.datepart(日期部分,日期)取指定时间的某一个部分,年月天时分秒.datediff(日期部分,日期1,日期2)计算指定的日期1和日期2的时间差多少.dateadd(日期部分,数值表达式,日期)计算指定时间,再加上表达式指定的时间长度.--取前几天'dataadd(day,-10,getdate())'--取时间的某一个部分selectdatepart(yy,getdate())--yearselectdatepart(mm,getdate())--monthselectdatepart(dd,getdate())--dayselectdatepart(hh,getdate())--hourselectdatepart(mi,getdate())--minselectdatepart(ss,getdate())--sec--取星期几setdatefirst1selectdatepart(weekday,getdate())--weekday--字符串时间SelectCONVERT(varchar(100),GETDATE(),0):0516200610:57AMSelectCONVERT(varchar(100),GETDATE(),1):05/16/06SelectCONVERT(varchar(100),GETDATE(),2):06.05.16SelectCONVERT(varchar(100),GETDATE(),3):16/05/06SelectCONVERT(varchar(100),GETDATE(),4):16.05.06SelectCONVERT(varchar(100),GETDATE(),5):16-05-06SelectCONVERT(varchar(100),GETDATE(),6):160506SelectCONVERT(varchar(100),GETDATE(),7):0516,06SelectCONVERT(varchar(100),GETDATE(),8):10:57:46SelectCONVERT(varchar(100),GETDATE(),9):0516200610:57:46:827AMSelectCONVERT(varchar(100),GETDATE(),10):05-16-06SelectCONVERT(varchar(100),GETDATE(),11):06/05/16SelectCONVERT(varchar(100),GETDATE(),12):060516SelectCONVERT(varchar(100),GETDATE(),13):1605200610:57:46:937SelectCONVERT(varchar(100),GETDATE(),14):10:57:46:967SelectCONVERT(varchar(100),GETDATE(),20):2006-05-1610:57:47SelectCONVERT(varchar(100),GETDATE(),21):2006-05-1610:57:47.157SelectCONVERT(varchar(100),GETDATE(),22):05/16/0610:57:47AMSelectCONVERT(varchar(100),GETDATE(),23):2006-05-16SelectCONVERT(varchar(100),GETDATE(),24):10:57:47SelectCONVERT(varchar(100),GETDATE(),25):2006-05-1610:57:47.250SelectCONVERT(varchar(100),GETDATE(),100):0516200610:57AMSelectCONVERT(varchar(100),GETDATE(),101):05/16/2006SelectCONVERT(varchar(100),GETDATE(),102):2006.05.16SelectCONVERT(varchar(100),GETDATE(),103):16/05/2006SelectCONVERT(varchar(100),GETDATE(),104):16.05.2006SelectCONVERT(varchar(100),GETDATE(),105):16-05-2006SelectCONVERT(varchar(100),GETDATE(),106):16052006SelectCONVERT(varchar(100),GETDATE(),107):0516,2006SelectCONVERT(varchar(100),GETDATE(),108):10:57:49SelectCONVERT(varchar(100),GETDATE(),109):0516200610:57:49:437AMSelectCONVERT(varchar(100),GETDATE(),110):05-16-2006SelectCONVERT(varchar(100),GETDATE(),111):2006/05/16SelectCONVERT(varchar(100),GETDATE(),112):20060516SelectCONVERT(varchar(100),GETDATE(),113):1605200610:57:49:513SelectCONVERT(varchar(100),GETDATE(),114):10:57:49:547SelectCONVERT(varchar(100),GETDATE(),120):2006-05-1610:57:49SelectCONVERT(varchar(100),GETDATE(),121):2006-05-1610:57:49.700SelectCONVERT(varchar(100),GETDATE(),126):2006-05-16T10:57:49.827--整数时间selectdatepart(hh,getdate())*10000+datepart(mi,getdate())*100+datepart(ss,getdate())--110646--时间格式YYYY.MM.DDHH:MI:SS转换为YYYYMMDDHHMISSdeclare@adatetime,@tmpvarchar(20),@tmp1varchar(20)select@a=convert(datetime,'2004.08.0312:12:12')select@tmp=convert(char(10),@a,112)select@tmpselect@tmp1=convert(char(10),datepart(hh,@a)*10000+datepart(mi,@a)*100+datepart(ss,@a))select@tmp1select@tmp=@tmp+@tmp1select@tmp--当月最后一天declare@tmpstrvarchar(10)@mmint,@premmint,@curmmlastdayvarchar(10)beginselect@mm=datepart(month,getdate())--当月select@premm=datepart(month,dateadd(month,-1,getdate()))--上个月if(@mm=1and@mm=8)select@tmpstr=convert(char(4),datepart(year,getdate()))+'.0'+convert(char(1),datepart(month,dateadd(month,1,getdate())))+'.'+'01'elseif(@mm=9and@mm=11)select@tmpstr=convert(char(4),datepart(year,getdate()))+'.'+convert(char(2),datepart(month,dateadd(month,1,getdate())))+'.'+'01'elseselect@tmpstr=convert(char(4),datepart(year,dateadd(year,1,getdate())))+'.0'+convert(char(1),datepart(month,dateadd(month,1,getdate())))+'.'+'01'select@curmmlastday=convert(char(10),dateadd(day,-1,@tmpstr),102)--当月最后一天end