表内容如下:
company_id bank_id amount
1001 中行 100.00
1002 建行 200.00
1002 建行 300.00
1001 招行 400.00怎么用一句SQL转化成以下形式呀? company_id 中行 <-bank_id,不固定 建行 招行 。
1001 100.00 0.00 400.00
1002 0.00 500.00 0.00银行是不固定的,可能还有其它银行,具体有多少未知,请帮我用一句SQL实现下。
company_id bank_id amount
1001 中行 100.00
1002 建行 200.00
1002 建行 300.00
1001 招行 400.00怎么用一句SQL转化成以下形式呀? company_id 中行 <-bank_id,不固定 建行 招行 。
1001 100.00 0.00 400.00
1002 0.00 500.00 0.00银行是不固定的,可能还有其它银行,具体有多少未知,请帮我用一句SQL实现下。
解决方案 »
- 求高手解决异常问题,小弟感激不尽。
- 一个invalid number错误
- Oracle中关于declared的问题!请高手指教
- JDBC能不能执行SQL=‘connect username/password@dbname’
- 请帮忙写一个存储过程,很简单的,因为没用oracle写过类似的程序,请帮帮忙
- select for update
- 全局数据库名称.数据库名称.SID是什么关系?
- 在ORACLE中两个SQL或两个以上语句如何写呀?
- 请教各位一个问题,我想学数据库,但不知学哪种数据库比较好.各位给提点意见.谢了!
- oracle使用序列的nextval的时候显示多条数据,为什么?
- 简单问题 送分
- 【觅秘】请问一下在客户段PL/SQL中DML语句(INSERT/UPDATE/DELETE),经办时间是以服务器时间计入系统数据库,还是以客户端时间计入系统数据库??
--总共就那几个银行,都列上就ok了
SELECT company_id,
SUM(DECODE(bank_id, '中行', amount,0)) 中行,
SUM(DECODE(bank_id, '建行', amount,0)) 建行,
SUM(DECODE(bank_id, '招行', amount,0)) 招行,
SUM(DECODE(bank_id, '民生', amount,0)) 民生
FROM bank
GROUP BY company_id
ORDER BY 1;
这话说得对,亏的是银行,要是饭店,那老鼻子了。如果不想固化的列出所有银行,可以写个过程,读出当前共使用多少个银行,拼接sql列,动态执行sql。
不值当的