一句集大成的SQL
今天PM提了个变态的需求,算法很繁琐大致如下
l Budget Light
System parameter: Budget Red – 20%; Budget Yellow - 10%
Grey: No value assigned to Budget
Green: Efforts <= Budget * (1-Budget Yellow)
Yellow: 1- Budget Yellow< Effort/Budget < 1+ Budget Red
Red: Effort >= Budget * (1+ Budget Red)
l Schedule Light
Grey: No value assigned to Start Date or End Date of phase
Green: A.Start < P.Start and A.End < P.End
Yellow: A.Start > P.Start
Red: A.End > P.End
数据库我就不贴了,涉及的表太多,大家就宏观看下
由于项目采用迭代开发(其实一开始需求很简单,没想过,所以导致现在的迭代开发很痛苦)所以数据库表越加越多,后来觉得乱糟糟的,所以导致SQL极度难写。
为了写这句sql,我分了三步走
第一句,显示所有要显示的文本数据
呵呵,已经过复杂的了
第二句,满足上面需求中的第一条
第三句,满足上面需求中的第二条
最后将他们合并满足最终的显示要求
这句sql基本涵盖了sql中所有常用的语句和方法,哎~~写的眼都花了,还好我分三步走,不然有的苦了。效率觉得一般,谁有觉得更好的写法,可以发表评论。