使用基于另一列的条件更新列

时间:2014-09-20 06:37:12

标签: sql sql-server

我在 SQL Server 中有6个表,所有表都以不同的标准相互链接,然后我创建了一个View,它为我提供了一个包含所有6个表中所有选定类别的表,以及该视图表与我的excel链接为数据透视表。

在6个表格中,有一个表格名为 AR1 ,在该表格中有一列名为 Arrear 。此列包含正数和负数,如123,43, 54,0,-34,-56,-678。现在我想在同一个表中的另一列中分类这个数字,列名是 OD_FD ,条件是:

如果数字> = 0,那么类别将 OD  如果数字<0那么类别将是 FD

并且应该在追加新数据时自动更新。

请详细解释,因为我不是SQL专家。

1 个答案:

答案 0 :(得分:0)

如果我正确理解你的问题,这个自动填充需要一个触发器。

我建议另一个解决方案。在AR1表上创建一个视图(或只是在查询中选择),以动态加载您的派生信息,如下所示:

select
    a.*,
    case
        when a.Arrear >= 0 then 'OD'
        else 'FD'
    end as OD_FD

from
    AR1 a