求表达式处理算法,进者有分
Efeis 2004-03-31 08:51:38 给出一SQL查询的查询表达式,例如查询:
SELECT Field1+Field2/Field3 FROM Table1
中的 Field1+Field2/Field3
为了避免零除错误,必须对表达式进行处理成:
Field1+(CASE Field3 WHEN 0 THEN NULL ELSE Field2/Field3 END)
请教定界Field2/Field3和Field3的算法和变换算法,注意Field2和Field3都可能也是一个表达式,如Field3=(Field4-Field5)