标识符

字符串连接运算符 [ string || string ]

select 'Gordon' || ' ' || 'Moore' As fullName;
   fullname   
--------------
 Gordon Moore
(1 row)

// 使用 “||” 连接两个或多个字符串。 (SQL)

此运算符也可以应用于表列。例如,“select first_name || ‘ ‘ || last_name As fullName from person”


平方根和立方根运算符 (|/ & ||/)

select |/25 As sqrt;
 sqrt 
------
   5
(1 row)

// 平方根运算符。 (SQL)

select ||/125 As cubert;
 cubert 
------
   5
(1 row)

// 立方根运算符。 (SQL)


阶乘运算符 (!)

select 5! As factorial;
 factorial 
-----------
    120
(1 row)

// 阶乘运算符。 (SQL)


二进制补码运算符 (~)

select ~60 As compl;
  compl 
----------
   -61
(1 row)

// 二进制 2 的补码。此运算符对位进行翻转。 (SQL)

假设 A = 60,现在以二进制格式表示如下 - A = 0011 1100 ~A = 1100 0011 (翻转位。将 0 更改为 1,将 1 更改为 0)


字符串小写和大写函数 [ lower(string), upper(string) ]

select lower('Rohit Kumawat') As lowerCase, upper('Rohit Kumawat') As upperCase;
   lowercase   |   uppercase   
---------------+---------------
 rohit kumawat | ROHIT KUMAWAT
(1 row)

// Postgres 小写和大写函数 (SQL)


字符串中的字符数 [ char_length(string) ]

select char_length('Arizona') as num_chars;
 num_chars 
-----------
     7
(1 row)

// 字符串中的字符数 (SQL)


指定子字符串的位置 [ position(substring in string) ]

select position('pan' in 'japan') As pos;
 pos 
-----
  3
(1 row)

// 指定子字符串的位置 (SQL)


提取子字符串 [ substring(string from [int] for [int] ]

select substring('postgres' from 3 for 3) As sub_string;
 sub_string 
------------
   stg
(1 row)

// 从第 3 个字符开始提取子字符串 “postgres”,长度为 3 个字符 (SQL)


在 SQL 输出中插入换行符

postgres=# select 'line 1'||E'\n'||'line 2' As newline;
 newline 
---------
 line 1 +
 line 2
(1 row)

// 使用 E’\n’ 插入新行 (SQL)

另一个选项是使用 chr() 函数。(E 用于转义字符串常量)。以下是一些其他转义序列:\b 退格符 \f 换页符 \n 换行符 \r 回车符 \t 制表符


引用标识符

Update "my table" set "a&b" = 0;

// 使用双引号作为分隔符标识符

这允许构建原本无法构造的表名或列名,例如包含空格或和号的表名或列名。双引号还用于在 postgres 中转义保留关键字


美元引号字符串常量

select $$Maria’s dogs$$ As col;
 col 
--------------------
 Maria’s dogs
(1 row)

// 使用美元引号字符串常量代替字符串的双引号 (SQL)

如果字符串包含多个单引号或反斜杠,则 Postgres 具有称为“美元引号”的替代方法。