zoukankan      html  css  js  c++  java
  • 简单的交叉表处理

    有水位记录表,主要字段有,时间点,站点,水位

    要求按时间段,得出指定的一个或者多个站点的水位表。

    列头为具体的站点,根据查询的站点个数自动按列展开
    行头为时间点

    表格中为具体的每个站点每个时间点具体的水位值

    数据库为Sqlserver

    我想既然站点是做为条件输入的,就可以动态拼出这个sql了
    sql如下:

    select 时间点
    , sum( case 站点字段 when '站点A' then 水位 else 0 end ) as '站点A'
    , sum( case 站点字段 when '站点B' then 水位 else 0 end ) as '站点B'
    , ......
    from 水位表 group by 时间点

    有多少个站点就动态拼出多个sum(....) as ,这样就可以一个语句解决了,不用做存储过程。如果不知道有那些具体的站点还是需要用存储过程来解决,一个sql解决不了。

  • 相关阅读:
    GUC-3 模拟CAS算法
    GUC-2 原子性
    GUC-1 volatile
    NIO-5补充
    NIO-4pipe
    NIO-3网络通信(非阻塞)
    NIO-3网络通信
    NIO-1缓冲区(Buffer)
    NIO-2通道(Channel)
    eclipse安装spring boot插件spring tool suite
  • 原文地址:https://www.cnblogs.com/webreport/p/758748.html
Copyright © 2011-2022 走看看