(YEAR(Date2) - YEAR(Date1)) * 12 + MONTH(Date2) - MONTH(Date1) + 1
其中 Date2 >= Date1
时间转换为时间戳(结果为秒)
datetime()-datetime(1970,1,1,0,0,0)
时间戳(为:1548753480,结果以秒为单位)转换为时间
datetime(1970,1,1,0,0,0)+1548753480
XmlDoc=CREATEOBJECT('Microsoft.XMLDOM')
XmlDoc.async=.F. &&设置同步下载
Ret=XmlDoc.Load('http://www.time.ac.cn/timeflash.asp?user=flash') &&读入XML文件(国家授时中心数据)
IF Ret=.T.
XMLTOCURSOR(XmlDoc.xml,'tDatetime',0)
SELECT tDatetime
BROWSE
ENDIF
?DATETIME(1970,1,1,0,0,0)+(1542351588000/1000)
1542351588000 为1970-1-1 00:00:00 到指定日期时间时的毫秒数
结果为:2018-11-16 06:59:48
日期型:{}
日期时间型:{/:}
ld=DATE(2015,2,29)
IF EMPTY(ld)
?"非闰年"
ELSE
?"闰年"
ENDIF
此处的年龄指的是周岁
SFZHM="333333201501261111"
?INT((VAL(DTOS(DATE()))-VAL(SUBSTR(SFZHM,7,8)))/10000)
Set Date To Ansi
Set Century On
Set Safety Off
CLOSE DATABASES
Create Table tt1 (cname c(6),cyear c(6), Cmonth c(6),nnewsal N (9,2))
Insert Into tt1 Values ("hans", "1998","2",300)
Insert Into tt1 Values ("hans", "1998","3",300)
Insert Into tt1 Values ("hans", "1998","4",300)
Insert Into ...
Clear
lnYear=2015
lnMonth=2
lDate1=Date(lnYear,lnMonth,1) && 本月期初日期
lDate2=Gomonth(lDate1,1)-1 && 本月期末日期
lnDay1=Dow(lDate1,2)-1 && 与本周星期一之间相差的天数
lnDay2=lDate2-lDate1+1 && 本月天数
lnDay3=Ceiling((lnDay1+lnDay2)/7)*7 && 日历元素数
Create Cursor Tdate (星期一 N...
Clear
dDate=Date()
STORE [] TO CRQ,CRQ1
A=REPLICATE([ ],(DOW(Date(Year(dDate),MONTH(dDate),1),2)-1)*3)
?[本月日历:]+tran(date())
?[一 二 三 四 五 六 日]
FOR I=1 TO Day(GOMONTH(dDate-Day(dDate)+1,1)-1)
CRQ=CRQ+IIF(I=1,A,[])+PADL(I,2,[ ])+IIF(DOW(Date(Year(dDate),MONTH(dDate),I),2)=7,CHR(13)+CHR(...
* 程序功能:中文时间(十九时五分二十六秒)转换为数字时间(19:05:26)
* 注:该程序稍加修改可用于中文日期转换为数字日期
lcStr="零,00;一,01;二,02;三,03;四,04;五,05;六,06;七,07;八,08;九,09;十,10;";
+"十一,11;十二,12;十三,13;十四,14;十五,15;十六,16;十七,17;十八,18;十九,19;二十,20;";
+"二十一,21;二十二,22;二十三,23;二十四,24;二十五,25;二十六,26;二十七,27;二十八,28;二十九,29;三十,30;";
+"三十一,31;三十二,32;三十三,33...
Clear
Date1={^2013.05.12}
Date2={^2013.06.10}
Local AlnDow[7] && 存储星期N的天数
Store 0 To AlnDow
Do While Date1<=Date2
Date1=Date1+1
AlnDow[Dow(date1,2)]=AlnDow[Dow(date1,2)]+1
EndDo
For lnI=1 To 7
? "星期"+Substr("一二三四五六日",lnI*2-1,2)+" "+Transform(AlnDow[lnI])+" 天"
EndFor
Clear
ldDatetime1=DATETIME()
ldDatetime2={^2018-06-15 12:00:00}
lnSeconds=ldDatetime2-ldDatetime1 && 总秒数
lnDays=Int(lnSeconds/86400) && 天数
lnHours=Int(Mod(lnSeconds,86400)/3600) && 小时
lnSecs=Mod(lnSeconds,3600) && 秒
?"距2018年6月15日上午12点整,还有 "+Transform(lnDays)...
类似问题:http://bbs.csdn.net/topics/390633445
编程对Table1表的日期数据处理,把日期段分拆,形成Table2的形式。
Create Table Table1 (cname C(10), date1 D, date2 D)
Insert Into Table1 Values ("Jack", {^1991-3-31}, {^1994-12-15})
Insert Into Table1 Values ("Lily", {^2000-9-10},{^2003-2-15})
Insert Into Tabl...
D1={^2012.12.08}
D2={^2013.11.25}
(Year(D2)-Year(D1))*12+MONTH(D2)-MONTH(D1)
sfzh="123456197801123456"
Ctod(Transform(Val(Substr(sfzh,7,8)),"9999-99-99"))
Clear
ldDate=Date()
lcStr="一,二,三,四,五,六,七,八,九,十,十一,十二,十三,十四,十五,十六,十七,十八,十九,二十,二十一,二十二,二十三,二十四,二十五,二十六,二十七,二十八,二十九,三十,三十一"
=Alines(Adate,Chrtran(lcStr,",",Chr(13)+Chr(10)))
* 年
?Chrtranc(Transform(Year(ldDate)),"0123456789","〇一二三四五六七八九")+"年"
* 月
?...
年月日 Transform(Val(Dtos(Date())),"9999年99月99日")
时分秒 Transform(Val(Chrtran(Time(),":","")),"99时99分99秒")
期末日期:Gomonth(Date(Year(Date()),Month(Date()),1),1)-1
当月天数:Day(Gomonth(Date(Year(Date()),Month(Date()),1),1)-1)
'星期'+SUBSTRC('一二三四五六日',Dow(Date(),2)*2-1,1)