如何使用CASE从单个列中获取3列? [英] How to use CASE to get 3 columns from a single column?

查看:78
本文介绍了如何使用CASE从单个列中获取3列?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个表 DataDollar ...和两列 LineNmbr&

I have one table "DataDollar"...and 2 columns "LineNmbr" & "DollarAmt" in that.

我需要将此列值显示为三列,具体取决于它们的值。

I need to display this column values as in three columns depending upon their values.

请帮助我!

SELECT
 DollarAmt AS
 CASE LineNmbr
    WHEN 19
        THEN  'A-Amt'
    WHEN 20
        THEN   'P-Amt'
    ELSE
          'D-Amt'
  END        
 FROM DataDollar


推荐答案

尝试使用三种大小写表达式,结果集中的每一列使用一种表达式:

Try using three case expressions, one for each column in the result set:

SELECT
    CASE LineNumber WHEN 19 THEN DollarAmt END AS AAmt,
    CASE LineNumber WHEN 20 THEN DollarAmt END AS PAmt,
    CASE WHEN LineNumber <> 19 AND LineNumber <> 20
        THEN DAmt
    END AS DAmt
FROM DataDollar

这篇关于如何使用CASE从单个列中获取3列?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆