zoukankan      html  css  js  c++  java
  • 1005.常量

     在PostgreSQL中有三种隐式类型常量:字符串、位串和数字。

    字符串常量:

    在SQL中,一个字符串常量是一个由单引号(')包围的任意字符序列,例如'This is a string'。

    为了在一个字符串中包括一个单引号,可以写两个相连的单引号,例如'Dianne''s horse'。要包括一个反斜线字符,请写两个反斜线(\)

    两个只由空白及至少一个新行分隔的字符串常量会被连接在一起,并且将作为一个写在一起的字符串常量来对待。例如:

    SELECT 'foo'

    'bar';

    等同于:

    SELECT 'foobar';

    如果配置参数standard_conforming_strings为off,那么PostgreSQL对常规字符串常量和转义字符串常量中的反斜线转义都识别。

    不过,从PostgreSQL 9.1 开始,该参数的默认值为on,意味着只在转义字符串常量中识别反斜线转义。

    美元引用的字符串常量

    PostgreSQL提供了另一种被称为“美元引用”的方式来书写字符串常量。

    一个美元引用的字符串常量由一个美元符号($)、一个可选的另个或更多字符的“标签”、另一个美元符号、一个构成字符串内容的任意字符序列、一个美元符号、开始这个美元引用的相同标签和一个美元符号组成。

    例如,这里有两种不同的方法使用美元引用指定字符串“Dianne's horse”:

    $$Dianne's horse$$

    $SomeTag$Dianne's horse$SomeTag$

    一个美元引用字符串的标签(如果有)遵循一个未被引用标识符的相同规则,除了它不能包含一个美元符号之外。

    标签是大小写敏感的,因此$tag$String content$tag$是正确的,但是$TAG$String content$tag$不正确。

    美元引用不是 SQL 标准的一部分,但是在书写复杂字符串文字方面,它常常是一种比兼容标准的单引号语法更方便的方法。

    数字常量

    如果使用了小数点,在小数点前面或后面必须至少有一个数字。

    如果存在一个指数标记(e),在其后必须跟着至少一个数字。

    在该常量中不能嵌入任何空白或其他字符。

    注意任何前导的加号或减号并不实际被考虑为常量的一部分,它是一个应用到该常量的操作符。

    如果一个不包含小数点和指数的数字常量的值适合类型integer(32 位),它首先被假定为类型integer。

    否则如果它的值适合类型bigint(64 位),它被假定为类型bigint。

    再否则它会被取做类型numeric。

    包含小数点和/或指数的常量总是首先被假定为类型numeric。

    必要时,你可以通过造型它来强制一个数字值被解释为一种指定数据类型。例如,你可以这样强制一个数字值被当做类型real(float4):

    REAL '1.23'  -- string style

    1.23::REAL   -- PostgreSQL (historical) style

    带有::的语法是PostgreSQL的历史用法,就像函数调用语法一样。

    CAST()以及函数调用语法也可以被用来指定任意表达式的运行时类型转换。

  • 相关阅读:
    [ Linux ] rsync 对异地服务器进行简单同步
    [ Skill ] 遍历整个项目设计的两个思路
    [ Skill ] 不常用的函数笔记
    [ Perl ] Getopt 使用模板
    [ Skill ] 两个 listBox 数据交换的模板
    [ Linux ] "真"后台 nohup
    [ VM ] VirtualBox 压缩 .vdi
    [ Skill ] Layout 工艺移植,还原库调用关系
    win8 hyper-v 禁用不必卸载虚拟机
    BM算法解析(计算机算法-设计与分析导论(第三版))
  • 原文地址:https://www.cnblogs.com/bufuzhou/p/14170994.html
Copyright © 2011-2022 走看看