SQL高階用法(1)

2021-08-30 14:21:58 字數 1144 閱讀 6347

sql> select * from c

2  /

id hy       shf           shl

---------- -------- ------ ----------

1 部隊     北京           30

2 建築     北京           50

3 部隊     湖北          100

4 建築     湖北          130

5 建築     上海           60

sql>

sql> select nvl(shf,'合計') "****",sum(部隊) 部隊,sum(建築)  建築,sum(sumshl) 合計

2  from

3  (

4  select shf,

5         max(decode(hy, '建築', shl, 0)) 建築,

6         max(decode(hy, '部隊', shl, 0)) 部隊,

7         sumshl

8    from (select a.id,

9                 a.hy,

10                 a.shf,

11                 a.shl,

12                 sum(shl) over(partition by shf) sumshl

13            from c a)

14   group by shf, sumshl

15   )

16   group by rollup(shf)

17  /

****         部隊       建築       合計

------ ---------- ---------- ----------

上海            0         60         60

北京           30         50         80

湖北          100        130        230

合計          130        240        370

sql>

SQL高階高階

select top 50 percent from websites mysql 語法 oracle 語法 select column name s from table name limit number sql like 操作符 like 操作符用於在 where 子句中搜尋列中的指定模式。s...

python高階用法 Python高階用法

python高階用法 三元表示式 x 10 y 20 print x if x y else y x 100 y 20 print x if x y else y 列表推導式和生成器 列表推導式 print i for i in range 10 print i 2 for i in range 1...

《SQL高階教程》 1 2 自連線的用法

自連線技術充分體現了sql面向集合的特性 組合分為型別 一種是有順序的有序對,另一種是無順序的無序對。使用交叉連線生成笛卡爾積就是有序對 select p1.name as name 1,p2.name as name 2 from products p1,products p2 有序對可以通過加w...