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()以及函数调用语法也可以被用来指定任意表达式的运行时类型转换。

  • 相关阅读:
    cookie,sessionStorage,loclaStorage,HTML5应用程序缓存
    网页设计单位 px,em,rem,vm,vh,%
    TCP协议三步挥手与四步挥手
    pycharm --批量注释和缩进
    Linux --编译kernel
    python-- pip 安装提速
    linux --tar: .BUILDINFO: time stamp 2020-08-27 17:25:55 is 68853652.868391065 s in the future .MTREE
    linux --This system is not registered to Red Hat Subscription Management
    Samba --配置Samba 服务
    linux --环境变量配置文件
  • 原文地址:https://www.cnblogs.com/bufuzhou/p/14170994.html
Copyright © 2011-2022 走看看