• SQL函数——CASE


         前段时间在学习oracle数据库时,看到了decode函数,主要是sql语句中的判断语句,可以根据判断进行赋值。然后就想到了之前在做今日开讲时,同样也遇到了类似的问题,数据库存储的是0或1,而界面显示时却不能为这样的。当时只是说做个判断,自己也知道,就没有做过多的思考。直到看到decode函数之后,才明白其实做判断,无非用的是sql中的函数。

         需求说明:比如数据库中存的用户级别为0和1,分别代表管理员和操作员,在查询人员信息情况时,界面需要显示用户级别这一列,库里存的是0和1,但是你得显示成“管理员”或者“操作员。

         自己在下边就来做了个测试,由于本地只装了SQL Server,就暂且那这个进行测试(装了mysql的可以用这个也试试)。刚开始的时候,在sqlserver中也是使用decode函数,结果提示语法错误。好吧,是我无知了,以为这个函数是数据库通用的呢。查资料发现,在sqlserver中使用的是CASE When语句进行判断的。如下:

        

    select userId, 
      case JID    --对JID进行分情况赋值
      when '0' then '管理员'  --0代表管理员
      when '1' then '一般用户'   --1代表一般用户
      else '一般用户'    --设置默认值
      END AS Level
     from T_User
        运行结果如下:

          

        这样的话就可以直接显示我们需要的内容。

        

        小结:

          数据库中存在很多像这样的函数,能给我们带来很大的便利。oracle、sqlserver和mysql中都存在这一类型的函数,只不过形式不同罢了。所以,在学习的初期,遇到某个函数时,不妨去其他类型的数据库中试验一下。这样一来自己就不用刻意的去记这些函数,还可以增加自己对函数的理解和运用。

  • 相关阅读:
    angularIO 路由守卫
    vue-property-decorator用法
    windows mysql 忘记密码
    OSPF 做负载均衡
    NLB 部署网络负载平衡
    flexible.js 布局详解
    python setup.py 构建
    python Zope.interface安装使用
    lnmp菜单
    linux下的文件删除原理
  • 原文地址:https://www.cnblogs.com/victor-grace/p/7253755.html
Copyright © 2020-2023  润新知