主题:SQL中决断日期值,并返回数值,请高手指点
好好学习天天向上
[专家分:100] 发布于 2006-03-22 10:49:00
[img]c:/5.jpg[/img]
菜鸟写一个小的工资程序,现在想判断工作龄,根据工龄发放福利费.各日期字段和福利费如上图所示.
我在SQL中,设计表时是这样写的.
入职日期:日期型
现在日期:日期型
间隔日期:日期型,公式是:间隔日期=现在日期-入职日期,该公式正确并可计算间隔日期.
福利费:数字型,公式是 : if 1900-03-01<间隔日期<1900-12-31 则 福利费等于10,或者1900-12-31<间隔日期<1901-12-31 则 福利费等于20,
福利费用的IF句,可是系统总是提示错误,我F1帮助查看,好象IF函数也没有,请高手帮忙指点一个,不胜感激.
回复列表 (共4个回复)
沙发
无法阻挡 [专家分:890] 发布于 2006-03-22 20:33:00
建表时不能用IF检查的 只能有CHECK IF是用在事物 存储过程等中的~
板凳
好好学习天天向上 [专家分:100] 发布于 2006-03-22 20:40:00
如果自定义一个函数行否?但是我还没有自定义过函数呢.有请高手的帮忙定义一个判断函数.
3 楼
无法阻挡 [专家分:890] 发布于 2006-03-22 20:59:00
根据我以前回你那个帖子 改改可以做级联更新的
4 楼
菜鸭 [专家分:5120] 发布于 2006-03-23 07:56:00
用case...end即可
case when 间隔日期 between 1900-03-01 and 1900-12-31 then 10
when 间隔日期 between 1900-12-31 and 1901-12-31 then 20 end
我来回复