sql - 如何将正数和负数分成各自的列?

标签 sql sybase

我有一个包含以下列和数据的表格:

activity_dt | activity_amt
 2009-01-01 |   -500
 2009-01-01 |    750

我可以编写一个查询来查看 activity_amt 的符号,如果为正,则将其放入贷方列,如果为负,则将其放入借方列? (我使用的是 Sybase)

activity_dt | debits | credits
 2009-01-01 |  -500  |   750

最佳答案

select activity_dt, 
    sum(case when activity_amt < 0 then activity_amt else 0 end) as debits, 
    sum(case when activity_amt > 0 then activity_amt else 0 end) as credits
from the_table
group by activity_dt
order by activity_dt

关于sql - 如何将正数和负数分成各自的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1698805/

相关文章:

java - JPA 查询中的联合 - 来自同一张表

connection-string - 如何使用 Sybase SQLAnywhere.SAConnection 进行远程连接?

c# - 64 位 Windows 服务器中的 Sybase 驱动程序错误

database - 为什么 sybase 索引大小比数据本身大得多

java - 如何归档Sybase数据库中的旧数据?

unicode - Sybase 正在用一些特殊字符替换 "\1xA"

c++ - native C++ SQL 框架

sql - 是否应该通过使用子查询和别名来避免重复聚合函数?

SQL CLR 存储过程和 Web 服务

java - ResultSet.get 抛出 java.sql.SQLException : Invalid operation at current cursor position