怎么把2004-13-1自动转为2005-1-1..在线等...
RT
在线等...
问题点数:20、回复次数:9Top
1 楼99percent(大鱼大肉)回复于 2004-12-04 08:55:37 得分 2
if rs("日期")="2004-13-1" then
conn.execute("update 表 set 日期="2005-1-1" where 日期="2004-13-1""
end if
你想怎么样转,不清楚你,你要说明白.Top
2 楼lingyun2111(凌云)回复于 2004-12-04 08:57:21 得分 2
怎么把2004-13-1自动转为2005-1-1..在线等...
提供个思路,以下代码没有测试^_^
if month("2004-13-1")>12 then
y=year("2004-13-1")+1
m=month("2004-13-1")-12
end if
newtime=y & "-" & m & "-" & day("2004-13-1")Top
3 楼fashman(ocean)回复于 2004-12-04 08:57:49 得分 0
不是sql里面..就是算日期的时候,遇到到这样的情况.自动换到下一年..Top
4 楼ahhisoft(无所事事)回复于 2004-12-04 09:32:54 得分 4
IF Month>12 Then
Month=Month-12
Year=Year+1
End IFTop
5 楼dsclub(任搏软)回复于 2004-12-04 09:42:34 得分 2
我认为当初运算出13月的算法有问题
Top
6 楼dh20156(风之石)回复于 2004-12-04 10:05:21 得分 2
你就直接替换好了,查找-13-,整个日期替换成2005-1-1Top
7 楼xiaoyuehen(OH, NO~It's Unfair!)回复于 2004-12-04 11:37:13 得分 4
问题不完整
2004-13-1 => 2005-1-1
2004-25-1 => 2006-1-1?
function toDate(str)
dim arrStr, intY, intM, intD
arrStr = Split(str, "-")
intY = arrStr(0) + arrStr(1) \ 12
intM = ((arrStr(1) - 1) Mod 12 + 1)
intD = arrStr(2)
toDate = intY & "-" & intM & "-" & intD
end function
注: 上面的函数不可直接用, 必须对str进行检测, 且arrStr(1)不能为<=0的数!!!Top
8 楼tatty_bad(我总是出现在该出现的地方)回复于 2004-12-04 15:56:32 得分 2
呵呵,很想知道,怎么出来的2004-13-01???
这也要有机会阿Top
9 楼yb2008(中科商务网--ZKE360.COM)回复于 2004-12-04 15:58:50 得分 2
关注!Top




