zoukankan      html  css  js  c++  java
  • SQL CASE的使用

    CASE表达式是一个标量表达式。它无法象C#程式一样,可以控制一条语句,实现条件逻辑流程处理。只能根据条件逻辑返回某个值。

    下面有一个xml文件

    代码
    <?xml version="1.0" encoding="utf-8" ?>
    <Intervales>
      
    <Interval>
        
    <IntervalId>0</IntervalId>
        
    <IntervalName></IntervalName>
      
    </Interval>
      
    <Interval>
        
    <IntervalId>1</IntervalId>
        
    <IntervalName>季度</IntervalName>
      
    </Interval>
      
    <Interval>
        
    <IntervalId>2</IntervalId>
        
    <IntervalName></IntervalName>
      
    </Interval>
      
    <Interval>
        
    <IntervalId>3</IntervalId>
        
    <IntervalName></IntervalName>
      
    </Interval>
      
    <Interval>
        
    <IntervalId>4</IntervalId>
        
    <IntervalName></IntervalName>
      
    </Interval>
      
    <Interval>
        
    <IntervalId>5</IntervalId>
        
    <IntervalName>小时</IntervalName>
      
    </Interval>
      
    <Interval>
        
    <IntervalId>6</IntervalId>
        
    <IntervalName>分钟</IntervalName>
      
    </Interval>
      
    <Interval>
        
    <IntervalId>7</IntervalId>
        
    <IntervalName></IntervalName>
      
    </Interval>
    </Intervales>

    它在程序应用时,会以一个DropDownList形式供用户选择,存在数据表字段中,存入时,它只存入XML节点IntervalId的值。
    下面例子中(代码部分),如果我们知道开始时间与时间间隔(频率),这样可以计算出结束时间:

    代码
    CASE [IntervalId] WHEN 0 THEN (DATEADD(Year,[Frequency],[StartDateTime])) WHEN 1 THEN (DATEADD(Quarter,[Frequency],[StartDateTime])) WHEN 2 THEN (DATEADD(Month,[Frequency],[StartDateTime])) WHEN 3 THEN (DATEADD(Week,[Frequency],[StartDateTime])) WHEN 4 THEN (DATEADD(Day,[Frequency],[StartDateTime])) WHEN 5 THEN (DATEADD(Hour,[Frequency],[StartDateTime])) WHEN 6 THEN (DATEADD(Minute,[Frequency],[StartDateTime])) WHEN 7 THEN (DATEADD(Second,[Frequency],[StartDateTime])) ENDAS [EndDateTime]
  • 相关阅读:
    pyspark 基本api使用说明(一)
    584. 寻找用户推荐人
    Spring IOC 容器源码分析(了解模板方法--钩子方法在spring中的使用)
    Mybatis事务创建和管理
    Mybatis源码分析执行流程总结
    设计模式之责任链模式
    设计模式之外观模式(门面模式)以及如何利用到接口设计中
    如何在聚合支付平台,巧用模板+工厂设计模式来实现异步回调
    浅谈设计模式之代理设计模式
    Java线上问题排查思路
  • 原文地址:https://www.cnblogs.com/insus/p/1775521.html
Copyright © 2011-2022 走看看