以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 表达式求年月日,没问题! (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=1084) |
||||
-- 作者:ybil -- 发布时间:2008/11/9 23:04:00 -- 表达式求年月日,没问题! 虽然狐表提供可用于表达式的函数不多,但以它来求年月日,还是可行嘀!
[此贴子已经被作者于2008-11-10 17:41:13编辑过]
|
||||
-- 作者:程兴刚 -- 发布时间:2008/11/10 1:03:00 -- 谢谢分享,先睹为快! |
||||
-- 作者:gdtgl -- 发布时间:2008/11/10 1:10:00 -- 支持原创.用函数太熟了...学习 [此贴子已经被作者于2008-11-10 1:14:53编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2008/11/10 8:17:00 -- 呵呵,这里还是用代码舒服点,这是典型的Y式风格的公式,非常人能写出来的。 不过求月、日、年的公式,非常奇妙,我已经据此更新了帮助文件。 [此贴子已经被作者于2008-11-10 9:44:19编辑过]
|
||||
-- 作者:kylin -- 发布时间:2008/11/10 15:08:00 -- 多谢,学习了 |
||||
-- 作者:czy -- 发布时间:2008/11/10 15:11:00 -- Y式风格,经典。 可惜俺只有看的份,猴年马月咱也学不会。 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2008/11/10 15:24:00 -- 以下是引用czy在2008-11-10 15:11:00的发言:
Y式风格,经典。 可惜俺只有看的份,猴年马月咱也学不会。
|
||||
-- 作者:ybil -- 发布时间:2008/11/10 16:57:00 -- 尽力简化一下吧: 非常【日满26则月进1】_年: Convert(SUBSTRING(Convert([日期],\'System.String\'),1,4),\'System.Int16\')+IIF(SUBSTRING(Convert([日期],\'System.String\'),6,5) in (\'12-26\',\'12-27\',\'12-28\',\'12-29\',\'12-30\',\'12-31\'),1,0) 非常【日满26则月进1】_月: IIF(SUBSTRING(Convert([日期],\'System.String\'),6,5) in (\'12-26\',\'12-27\',\'12-28\',\'12-29\',\'12-30\',\'12-31\'),1,Convert(SUBSTRING(Convert([日期],\'System.String\'),6,IIF(SUBSTRING(Convert([日期],\'System.String\'),7,1) = \'-\',1,2)),\'System.Int16\')+IIF(SUBSTRING(Convert([日期],\'System.String\'),8,3) in (\'-26\',\'-27\',\'-28\',\'-29\',\'-30\',\'-31\',\'26\',\'27\',\'28\',\'29\',\'30\',\'31\'),1,0)) 月底日期: SUBSTRING(Convert([日期],\'System.String\'),1,IIF(SUBSTRING(Convert([日期],\'System.String\'),7,1) = \'-\',7,8))+IIF(SUBSTRING(Convert([日期],\'System.String\'),6,IIF(SUBSTRING(Convert([日期],\'System.String\'),7,1) = \'-\',1,2))= 2,28+IIF(Convert(SUBSTRING(Convert([日期],\'System.String\'),1,4),\'System.Int16\') % 4 = 0, 1,0),IIF(Convert(SUBSTRING(Convert([日期],\'System.String\'),6,IIF(SUBSTRING(Convert([日期],\'System.String\'),7,1) = \'-\',1,2)),\'System.Int16\') In (1,3,5,7,8,10,12),31,30)) 加n年日期: Convert(SUBSTRING(Convert([日期],\'System.String\'),1,4),\'System.Int16\')+[n]+SUBSTRING(Convert([日期],\'System.String\'),5,15) [此贴子已经被作者于2008-11-11 9:00:29编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2008/11/10 17:08:00 -- 呵呵,你太厉害了! |
||||
-- 作者:aaa -- 发布时间:2008/11/10 19:44:00 -- 厉害 |