• 金仓数据库 KingbaseES SQL 语言参考手册 (3.5. 格式模型、3.6. 空值、3.7. 注释)


    3.5. 格式模型

    格式模型是一种字符常量,它描述了存储在字符串中的日期时间或数值的格式。格式模型不会更改数据库中值的内部表示。将字符串转换为日期或数字时,格式模型确定 KingbaseES数据库如何解释字符串。

    在SQL语句中,可以通过"TO_CHAR"和"TO_DATE"函数的参数来指定格式模型:

    • 指定从数据库返回值的格式

    • 指定存储在数据库中的值的格式

    例如:

    字符串 '17:45:29' 的日期时间格式模型是 'HH24:MI:SS'。

    字符串 '11-Nov-1999' 的日期时间格式模型是 'DD-Mon-YYYY'。

    字符串 '$2,304.25' 的数字格式模型是 '$9,999.99'。

    有关数字和日期时间格式模型元素的列表,请参见"日期时间类型"和"数据类型格式化函数"。

    某些格式的值由初始化参数的值决定。对于此类格式,可以使用初始化参数NLS_TERRITORY隐式指定这些格式元素返回的字符。

    ALTER SESSION语句可以更改会话的默认日期格式。

    3.6. 空值

    如果某列中没有值,则该列值称为null,即空值。任何数据类型的列都可以输入Null值,除非该列被限定为not null 或者是主键约束。当实际列值未知或者无意义可以输入null值。

    KingbaseES数据库将长度为0的字符值表示为null。但是,不要用null表示数值0,这两者不等。

    任何包含null值的算术表达式结果为null。例如:null 加10 结果为null。

    3.6.1. SQL 函数中的空值

    SQL函数中对NULL的处理,请参见“SQL函数中的空值”。

    3.6.2. 比较条件中的空值

    通过条件比较 IS NULL 或者 IS NOT NULL 验证值是否为空值。如果使用了其他条件来对空值进行比较,该条件结果也依赖该空值进行判断,则该条件结果为unknown。 应为空值表示缺乏数据,空值不能与其他值或者其他空值进行等值或者不等值比较。KingbaseES支持DECODE函数判断两个空值是否相等,请参考DECODE函数了解具体语法。

    3.6.3. 条件中的空值

    条件中把unknown判断为flase。例如,带有条件的查询语句,where子句条件结果为unknown,则该查询语句不返回任何结果。 但是,unknown与false也不同,not false 判断为真,但是not unknown 判断为 unknown。

    3.7. 注释

    一段注释是以双斜线开始并且延伸到行结尾的一个字符序列,例如:

    -- This is a standard SQL comment
    

    另外,也可以使用 C 风格注释块:

    /* multiline comment
     * with nesting: /* nested block comment */
     */
    

    这里该注释开始于/*并且延伸到匹配出现的*/。这些注释块可按照 SQL 标准中指定的方式嵌套,但和 C 中不同。这样我们可以注释掉一大段可能包含注释块的代码。

    在进一步的语法分析前,注释会被从输入流中被移除并且实际被替换为空白。

  • 相关阅读:
    git使用
    uboot源码——根目录下的mkconfig文件分析
    vue2 解密图片地址(url)-使用blob文件-打开png格式图片
    二叉树汇总
    推广PowerBI,你想好了么?
    C++:哈希,unordered_map和unordered_set
    《C++代码简洁之道》学习笔记:C++代码整洁的基本规范
    java 常用正则表达式记录
    Apache Maven;会话技术
    LabVIEW中局部变量和全局变量的分配
  • 原文地址:https://blog.csdn.net/arthemis_14/article/details/125876205