sql - 将 SQL 中的结果从正数更改为负数
问题描述
我正在使用以下代码将数据插入到 SQL 中的 Temp 表中:
SELECT bartt_code, bartt_code_description, mele_port_name, expiry_date, trade_price, trade_qty_in_lots, trade_qty, (trade_price*trade_qty) AS 'Price_x_Quantity'
INTO #Table1
FROM kst_exchange_trade
WHERE bartt_code IS NOT NULL
GROUP BY bartt_code, bartt_code_description, mele_port_name, expiry_date, trade_price, trade_qty_in_lots, trade_qty
我遇到了一个问题,当 trade_qty_in_lots 为负时,trade_qty 应该为负。我如何将其构建到我的查询中以进行此更改?
解决方案
该sign()
函数将返回一个可用于匹配负/正的值。
sign(trade_qty_in_lots) * abs(trade_qty)
如果您可以保证trade_qty
始终为正,那么绝对值自然是不必要的并且可以删除。
推荐阅读
- javascript - 输入正确数字时的Javascript if语句不满足其他条件
- r - 在 R 中子集多个对象而不指定所有对象
- django - ValueError at / 'pic' 属性没有与之关联的文件
- python - 在字符串中构造带有值作为参数的url字符串
- python - 如何退出然后自动重启代码
- asynchronous - Arc::clone 的结果怎么会有一个“静态生命周期”?
- python - python中的布尔值
- sql - PostgreSQL - 在给定安装和卸载表的情况下查找每天的安装次数
- frontend - bootstrap 5 carousel 没有响应并且缺少文本
- haskell - Haskell 中的流数据类型实现