• SQL查询统计


    SQL> select a, b, sum(c), grouping(a), grouping(b), grouping(c) from test group by rollup(a, b, c);

    A          B              SUM(C) GROUPING(A) GROUPING(B) GROUPING(C)
    ---------- ---------- ---------- ----------- ----------- -----------
    a          aaa                10           0           0           0
    a          aaa                20           0           0           0
    a          aaa                30           0           0           1
    a          bbb                30           0           0           0
    a          bbb                40           0           0           0
    a          bbb                70           0           0           1
    a                            100           0           1           1
    aa         ccc                50           0           0           0
    aa         ccc                60           0           0           0
    aa         ccc               110           0           0           1
    aa         ddd                70           0           0           0
    aa         ddd                70           0           0           1
    aa                           180           0           1           1
                                 280           1           1           1

    14 rows selected

    SQL> select a, b, sum(c), grouping(a), grouping(b), grouping(c) from test group by rollup(a, b, c) having grouping(c) = 1;

    A          B              SUM(C) GROUPING(A) GROUPING(B) GROUPING(C)
    ---------- ---------- ---------- ----------- ----------- -----------
    a          aaa                30           0           0           1
    a          bbb                70           0           0           1
    a                            100           0           1           1
    aa         ccc               110           0           0           1
    aa         ddd                70           0           0           1
    aa                           180           0           1           1
                                 280           1           1           1

    7 rows selected

    SQL> select a, b, sum(c), grouping(a), grouping(b) from test group by rollup(a, b);

    A          B              SUM(C) GROUPING(A) GROUPING(B)
    ---------- ---------- ---------- ----------- -----------
    a          aaa                30           0           0
    a          bbb                70           0           0
    a                            100           0           1
    aa         ccc               110           0           0
    aa         ddd                70           0           0
    aa                           180           0           1
                                 280           1           1

    7 rows selected

    SQL>  

  • 相关阅读:
    return和yield的区别
    基本装饰器
    javascript实例:两种方式实现tab栏选项卡
    javascript实例:路由的跳转
    javascript实例:点亮灯泡
    标签页QTabWidget
    主窗口QMainWindow和启动画面
    各种对话框
    列表视图QlistView
    拆分窗口QSplitter
  • 原文地址:https://www.cnblogs.com/mingdep/p/2857759.html
Copyright © 2020-2023  润新知