zoukankan      html  css  js  c++  java
  • SQL sum case when then else【转】

    数据库 t

    表     b
    表内容
           Id        Name      胜负
           1          张三     胜
           2          李四     胜
           3          张三     胜
           4          张三     负
           5          王五     胜
           6          赵六     负
    要求显示谁胜了几场
    select Name, case 胜负 when '胜' then 1 else 0 as SF end from b
    显示的内容为
            Name    SF
            张三    1
            李四    1
            张三    1
            张三    0
            王五    1
            赵六    0
    把数字进行加法运算需要用到 sum  是根据Name 合并组的
    select Name,sum(case 胜负 when '胜' then 1 else 0 end) as '胜利的次数' from b group by Name
     
    显示的内容为
          Name              胜利的次数
          张三                2
          李四                1
          王五                1
          赵六                0
    如果要想把胜利几场和失败几场都显示出来
    select Name,sum(case 胜负 when '胜' then 1 else 0 end) as '胜利的次数',sum(case 胜负 when '负' then 1 else 0 end)as '失败的次数' from b group by Name
    显示的是
           Name               胜利的次数            失败的次数
           张三                 2                        1
           李四                 1                        0
           王五                 1                        0  
           赵六                 0                        1 
  • 相关阅读:
    编译
    Package vim is not available, but is referred to by another package.
    Http 请求处理流程 Asp.Net 编程 TraceFact.Net
    JavaScript中两个感叹号的作用
    IE6 链接失效 <a>失效 不能点击
    父元素绝对定位 子元素在IE6 不能点击
    ie6 ie7 绝对定位 相对定位 层被遮住
    HTTP深入浅出http请求
    主流的js template引擎 前端模板
    第3章:基本概念(一)
  • 原文地址:https://www.cnblogs.com/zzlp/p/5109497.html
Copyright © 2011-2022 走看看