在 SQL 中选择"查询",追加字符



我是SQL新手。我有一个银行项目,在一个表中有这样的值。

Type    Amount  
-----  -------
Credit   5000    
Debit    2000
Debit    1000........... so on

现在我需要获取这些列。使用 Select 语句我可以获取,但我需要为借记的金额附加"-"(如借方"-2000"...(和"+"作为贷记金额。

如何使用选择查询在金额列中追加这些函数。 请帮我解决这个问题。

您可以在检查借方类型的CASE语句中执行此操作,然后将 -1 应用于金额:

SELECT
Type,
CASE WHEN Type='Debit' THEN (Amount*(-1)) ELSE Amount END AS Value
FROM Table

要特别显示借方和贷方的 -1000 和 +2000 等金额,应该将这些金额显示为"字符串">

select
Type,
case
when Type = 'Credit' then '+' + convert(varchar, Amount)
else '-' + convert(varchar, Amount)
end as Amount
from
tab

您也可以使用解码代替大小写。

将有符号值打印为字符串

select decode(type,'Debit','-','+')||amount as value from tab;

将值保留为数字但有符号

select decode(type,'Debit',-1*amount,amount) as value from tab;

最新更新