在teradata中进行列计算安全

时间:2017-04-02 17:36:57

标签: teradata

让我们说我有这个做作/简化的SQL:

SELECT
    Column1/Column2                
FROM SomeTable;

其中Column2可能为0,导致div为零,因此整个查询都会崩溃。我可以这样做:

SELECT
    Column1/Column2                
FROM SomeTable
where Column2 <> 0;

或使用COALESCE,CASE声明等。我遇到的挑战是'公式',例如Column1 / Column2可以是动态的(没有sql注入的危险)。

理想情况下,我想将'计算列'的计算包装在某种try catch中,并为任何失败的计算返回-9999,否则计算结果。我希望这是有道理的。如果是这样,这可以通过某种方式实现吗?

0 个答案:

没有答案