• SQL脚本 CASE...WHEN...THEN...ELSE...END 的应用



    --查找含有A 或 C 站点的车次
    drop table SCHEDULETEST;

    create table SCHEDULETEST
    (
      SID     
    int not null,
      CHECI   
    VARCHAR(8),
      CHEZHAN 
    VARCHAR(8)
    );


     
    新增示例数据
    Code
     
     
    select * from scheduletest;

    SELECT CHECI as '经过A和C站点的车次'
    FROM SCHEDULETEST
    WHERE CHEZHAN IN('A','C'
    GROUP BY CHECI
    HAVING COUNT(distinct SID)>=2;

    SELECT CHECI 
    FROM SCHEDULETEST A
    WHERE (CHEZHAN='A' OR CHEZHAN='C'
    GROUP BY CHECI
    HAVING COUNT(distinct SID)>=2;


    --取出每一车次停靠的站点数
    select checi '车次',countdistinct chezhan) AS '停靠站点数量'
    from SCHEDULETEST
    group by checi;

    --取出每一车次停靠 A,C的站点次数
    select checi AS 车次,
    SUM(case chezhan when 'A' THEN 1 ELSE 0 END'停靠A站点的次数',
    SUM(case chezhan when 'C' THEN 1 ELSE 0 END'停靠C站点的次数'
    FROM SCHEDULETEST
    GROUP BY CHECI;

  • 相关阅读:
    [SDOI2012]任务安排
    JavaScript数据存储和深浅拷贝实际运用
    在VUE中使用Echarts
    JavaScript的原型链
    关于JavaScript的43道题①
    JS为什么是单线程的?
    HTTP协议②缓存
    HTTP协议①介绍
    树形结构的数据渲染(element-ui&VUE)
    js中定义变量之②var let const的区别
  • 原文地址:https://www.cnblogs.com/furenjun/p/sqlSample.html
Copyright © 2020-2023  润新知