sql - 格式化case语句中的数字
问题描述
我有一个查询,其中包含一些案例语句,其中一个确定要支付一个帐户的金额,现在一切都很好,但我希望对结果进行格式化,它是如何在 SQL 中显示的。我正在使用 SQL Server Management Studio (SQL Server 2016)。
我正在尝试将'$' + Format(col_name, '#,###')
结果显示为货币但没有小数。图片显示了我在运行查询后当前拥有的内容。
当我尝试合并上述格式时,我得到Msg 402 Error The data types nvarchar and varchar are incompatible in the subtract operator.
不知道如何修改我的代码。
CASE
WHEN (prior.amountpaid - prior.amountOwed) < 0 THEN p.amountpaid
ELSE
prior.amountpaid - prior.amountOwed + p.amountpaid
END AS 'Amount Paid',
解决方案
将 FORMAT 函数包裹在整个 CASE 表达式周围,而不是在单个列上执行。
推荐阅读
- javascript - 为什么这个 onSubmit 不调用它的函数?
- python-3.x - 针对特定因素的 Pandas 'get_dummies'
- c# - 创建随机数并将它们存储在数组中
- sql - 如何在 DDL 中使用子查询?与 Oracle SQL Developer 相关的问题
- woocommerce - WooCommerce 产品图像交换在翻转时隐藏第一张图像
- javascript - 图片需要很长时间才能加载
- python - virtualenv 在 Windows 上无法正常工作
- android - 以编程方式连接 vpn 为 android ios 做出本机反应
- python - 显示关系的图表 - 多个非数字列
- css - CSS选择跨度