Pra*_*are 5 postgresql syntax sql-standard
我在这里查看 SQL 关键字列表https://www.postgresql.org/docs/current/sql-keywords-appendix.html
那里有一些单字母关键字。我找不到有关他们的任何信息。我在哪里可以找到这些信息以及这些信息的用途是什么?
例子,
A
,C
,F
,G
,K
,M
,P
,T
。
检查我的 SQL 标准(2011 版)的(草稿)副本,我发现第 5.2 节 <token> 和 <separator>中提到了K、M、G、T、P:
<large object length token> ::=
<digit>... <multiplier>
<multiplier> ::=
K
| M
| G
| T
| P
Run Code Online (Sandbox Code Playgroud)
它们显然是指 Kilo、Mega、Giga、Tera、Peta。它们在第 6.1 节 <数据类型>,语法规则 9中进行了解释:
9) The numeric value of a <large object length> LOL is determined as follows.
Case:
a) If LOL immediately contains <unsigned integer> and does not immediately
contain <multiplier>, then the numeric value of <large object length> is the
numeric value of the specified <unsigned integer>.
b) If LOL immediately contains <large object length token> or immediately
contains <unsigned integer> and <multiplier>, then let D be the value of
the specified <unsigned integer> or the numeric value of the sequence of
<digit>s of <large object length token> interpreted as an <unsigned integer>.
The numeric value of LOL is the numeric value resulting from the
multiplication of D and MS, where MS is:
i) If <multiplier> is K, then 1,024.
ii) If <multiplier> is M, then 1,048,576.
iii) If <multiplier> is G, then 1,073,741,824.
iv) If <multiplier> is T, then 1,099,511,627,776.
v) If <multiplier> is P, then 1,125,899,906,842,624.
Run Code Online (Sandbox Code Playgroud)
C和M在10.2<语言子句>中提到:
<language clause> ::=
LANGUAGE <language name>
<language name> ::=
ADA
| C
| COBOL
| FORTRAN
| M | MUMPS
| PASCAL
| PLI
| SQL
Run Code Online (Sandbox Code Playgroud)
我还没有找到A。它可能存在于旧版本的SQL 标准中,然后被删除,或者可能已在更高版本中添加。
归档时间: |
|
查看次数: |
118 次 |
最近记录: |