ITPub博客

首页 > Linux操作系统 > Linux操作系统 > decode函数

decode函数

原创 Linux操作系统 作者:wanghaojq 时间:2008-08-15 13:46:36 0 删除 编辑

SQL> create table sales
  2  (no number(20),
  3  no2 number(20),
  4  num number(6,2),
  5  rq date);

表已创建。

SQL> insert into sales values(1234,567890,33.5,'2004-12-21');

已创建 1 行。

SQL> insert into sales values(1234,598701,44.8,'2004-11-21');

已创建 1 行。

SQL> insert into sales values(1234,598701,45.2,'2004-10-01');

已创建 1 行。

SQL> insert into sales values(1234,567890,66.5,'2004-9-21');

已创建 1 行。

SQL> insert into sales values(3456,789065,22.5,'2004-10-01');

已创建 1 行。

SQL> insert into sales values(3456,789065,77.5,'2004-10-27');

已创建 1 行。

SQL> insert into sales values(3456,678901,48.5,'2004-12-21');

已创建 1 行。

SQL> commit;

提交完成。

SQL> select no,no2,sum(num) from sales group by no,no2;

        NO        NO2   SUM(NUM)
---------- ---------- ----------
      1234     567890        100
      1234     598701         90
      3456     789065        100
      3456     678901       48.5


SQL> select t.no,t.no2,
  2  sum(decode(to_char(t.rq,'mm'),'09',t.num,0)) as 九月份,
  3  sum(decode(to_char(t.rq,'mm'),'10',t.num,0)) as 十月份,
  4  sum(decode(to_char(t.rq,'mm'),'11',t.num,0)) as 十一月份,
  5  sum(decode(to_char(t.rq,'mm'),'12',t.num,0)) as 十二月份
  6  from sales t
  7  group by t.no,t.no2;

        NO        NO2     九月份     十月份   十一月份   十二月份
---------- ---------- ---------- ---------- ---------- ----------
      1234     567890       66.5          0          0       33.5
      1234     598701          0       45.2       44.8          0
      3456     789065          0        100          0          0
      3456     678901          0          0          0       48.5

SQL>

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8620228/viewspace-429394/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2007-12-10

  • 博文量
    7
  • 访问量
    7154