Skip to content

Commit 489abeb

Browse files
committed
Merge pull request #4 from MofeLee/patch-1
修改“聚集”为“聚合”
2 parents d668e6c + 722680e commit 489abeb

File tree

1 file changed

+35
-35
lines changed

1 file changed

+35
-35
lines changed

postgresql/doc/src/sgml/syntax.sgml

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1390,7 +1390,7 @@ There are a few restrictions on operator names, however:
13901390
-->
13911391
<para>
13921392
星号(<literal>*</literal>)在某些环境里表示一个表的全部字段或者一个复合类型的值。
1393-
在用作聚集函数的参数时还表示该聚集并不需要明确的参数
1393+
在用作聚合函数的参数时还表示该聚合并不需要明确的参数
13941394
</para>
13951395
</listitem>
13961396

@@ -1898,7 +1898,7 @@ the <literal>OPERATOR</> construct is taken to have the default precedence
18981898
</para>
18991899
-->
19001900
<para>
1901-
一个聚集表达式
1901+
一个聚合表达式
19021902
</para>
19031903
</listitem>
19041904

@@ -2352,7 +2352,7 @@ The list of built-in functions is in <xref linkend="functions">.
23522352
<!--
23532353
<title>Aggregate Expressions</title>
23542354
-->
2355-
<title>聚集表达式</title>
2355+
<title>聚合表达式</title>
23562356
<indexterm zone="syntax-aggregates">
23572357
<primary>aggregate function</primary>
23582358
<secondary>invocation</secondary>
@@ -2366,9 +2366,9 @@ An <firstterm>aggregate expression</firstterm> represents the
23662366
output value, such as the sum or average of the inputs. The
23672367
syntax of an aggregate expression is one of the following:
23682368
-->
2369-
一个<firstterm>聚集表达式</firstterm>代表一个聚集函数对查询选出的行的处理
2370-
一个聚集函数把多个输入缩减为一个输出值,比如给输入求和或求平均。
2371-
一个聚集表达式的语法是下列之一
2369+
一个<firstterm>聚合表达式</firstterm>代表一个聚合函数对查询选出的行的处理
2370+
一个聚合函数把多个输入缩减为一个输出值,比如给输入求和或求平均。
2371+
一个聚合表达式的语法是下列之一
23722372
<synopsis>
23732373
<replaceable>aggregate_name</replaceable> (<replaceable>expression</replaceable> [ , ... ] [ <replaceable>order_by_clause</replaceable> ] )
23742374
<replaceable>aggregate_name</replaceable> (ALL <replaceable>expression</replaceable> [ , ... ] [ <replaceable>order_by_clause</replaceable> ] )
@@ -2385,8 +2385,8 @@ An <firstterm>aggregate expression</firstterm> represents the
23852385
<replaceable>order_by_clause</replaceable> is a optional
23862386
<literal>ORDER BY</> clause as described below.
23872387
-->
2388-
这里的<replaceable>aggregate_name</replaceable>是前面定义的聚集(可能是带有模式的全称),
2389-
而<replaceable>expression</replaceable>是一个本身不包含聚集表达式或一个窗口函数调用的任意值表达式
2388+
这里的<replaceable>aggregate_name</replaceable>是前面定义的聚合(可能是带有模式的全称),
2389+
而<replaceable>expression</replaceable>是一个本身不包含聚合表达式或一个窗口函数调用的任意值表达式
23902390
<replaceable>order_by_clause</replaceable>是<literal>ORDER BY</> 子句的一个选项,下面会有描述。
23912391
</para>
23922392

@@ -2405,11 +2405,11 @@ An <firstterm>aggregate expression</firstterm> represents the
24052405
</para>
24062406
-->
24072407
<para>
2408-
第一种形式的聚集表达式为每个输入行调用聚集
2408+
第一种形式的聚合表达式为每个输入行调用聚合
24092409
第二种形式与第一种等价(因为<literal>ALL</literal>是缺省值)。
2410-
第三种形式为每个表达式中不同的值调用聚集(或者为多个表达式不同的值的集合)。
2411-
最后一种形式为每个输入行调用一次聚集,因为没有声明特定的输入值,
2412-
通常它只用于<function>count(*)</function>聚集函数
2410+
第三种形式为每个表达式中不同的值调用聚合(或者为多个表达式不同的值的集合)。
2411+
最后一种形式为每个输入行调用一次聚合,因为没有声明特定的输入值,
2412+
通常它只用于<function>count(*)</function>聚合函数
24132413
</para>
24142414
<!--
24152415
<para>
@@ -2420,8 +2420,8 @@ An <firstterm>aggregate expression</firstterm> represents the
24202420
</para>
24212421
-->
24222422
<para>
2423-
大多数的聚集函数忽略了NULL输入,因此在一个或多个表达式中产生NULL的行会被丢弃。
2424-
对所有的内置聚集函数而言,这样做是可以的,除非另行说明。
2423+
大多数的聚合函数忽略了NULL输入,因此在一个或多个表达式中产生NULL的行会被丢弃。
2424+
对所有的内置聚合函数而言,这样做是可以的,除非另行说明。
24252425
</para>
24262426
<!--
24272427
<para>
@@ -2453,10 +2453,10 @@ Ordinarily, the input rows are fed to the aggregate function in an
24532453
are always just expressions and cannot be output-column names or numbers.
24542454
For example:
24552455
-->
2456-
一般情况下,输入行会以非特定顺序放入到聚集函数中。在许多情况下,这样做是没有影响的;
2456+
一般情况下,输入行会以非特定顺序放入到聚合函数中。在许多情况下,这样做是没有影响的;
24572457
如,无论以什么顺序输入,<function>min</>输出相同的结果。然而,
2458-
一些聚集函数(如<function>array_agg</> 和 <function>string_agg</>)并非如此。
2459-
当使用这种聚集函数时,可以用<replaceable>order_by_clause</>选项指定输入的顺序。
2458+
一些聚合函数(如<function>array_agg</> 和 <function>string_agg</>)并非如此。
2459+
当使用这种聚合函数时,可以用<replaceable>order_by_clause</>选项指定输入的顺序。
24602460
除了它的表达式仅仅只是表达式,并且不能输出列名或列数之外,<replaceable>order_by_clause</>
24612461
与<literal>ORDER BY</>查询子句有相同的语法结构,在<xref linkend="queries-order">中有描述,如:
24622462
<programlisting>
@@ -2470,7 +2470,7 @@ SELECT array_agg(a ORDER BY b DESC) FROM table;
24702470
<literal>ORDER BY</> clause goes after all the aggregate arguments.
24712471
For example, write this:
24722472
-->
2473-
在处理多参数聚集函数时需要注意,<literal>ORDER BY</>子句要在所有的聚集函数参数之后,如这样写:
2473+
在处理多参数聚合函数时需要注意,<literal>ORDER BY</>子句要在所有的聚合函数参数之后,如这样写:
24742474

24752475
<programlisting>
24762476
SELECT string_agg(a, ',' ORDER BY a) FROM table;
@@ -2486,7 +2486,7 @@ SELECT string_agg(a ORDER BY a, ',') FROM table; -- incorrect
24862486
(the second one being rather useless since it's a constant).
24872487
-->
24882488
后者在语法上是有效的,但它表示的是,
2489-
有两个<literal>ORDER BY</>关键字的单参数的聚集函数的调用(第二个是无用的,
2489+
有两个<literal>ORDER BY</>关键字的单参数的聚合函数的调用(第二个是无用的,
24902490
因为它是一个常量)。
24912491
</para>
24922492

@@ -2501,7 +2501,7 @@ SELECT string_agg(a ORDER BY a, ',') FROM table; -- incorrect
25012501
-->
25022502
<para>
25032503
如果<replaceable>order_by_clause</>中声明了<literal>DISTINCT</>,
2504-
那么所有的<literal>ORDER BY</>表达式必须匹配规则的聚集参数,也就是说,
2504+
那么所有的<literal>ORDER BY</>表达式必须匹配规则的聚合参数,也就是说,
25052505
不能对没有包含在<literal>DISTINCT</>列表中的表达式进行排序。
25062506
</para>
25072507
<note>
@@ -2512,7 +2512,7 @@ SELECT string_agg(a ORDER BY a, ',') FROM table; -- incorrect
25122512
</para>
25132513
-->
25142514
<para>
2515-
同时在一个聚集函数中声明<literal>DISTINCT</>和<literal>ORDER BY</>是<productname>PostgreSQL</>的一个扩展。
2515+
同时在一个聚合函数中声明<literal>DISTINCT</>和<literal>ORDER BY</>是<productname>PostgreSQL</>的一个扩展。
25162516
</para>
25172517
</note>
25182518

@@ -2524,7 +2524,7 @@ SELECT string_agg(a ORDER BY a, ',') FROM table; -- incorrect
25242524
</para>
25252525
-->
25262526
<para>
2527-
预定义的聚集函数在<xref linkend="functions-aggregate">里描述。其它聚集函数可以由用户增加
2527+
预定义的聚合函数在<xref linkend="functions-aggregate">里描述。其它聚合函数可以由用户增加
25282528
</para>
25292529
<!--
25302530
<para>
@@ -2536,8 +2536,8 @@ SELECT string_agg(a ORDER BY a, ',') FROM table; -- incorrect
25362536
</para>
25372537
-->
25382538
<para>
2539-
一个聚集表达式只能在<command>SELECT</>命令的结果列表或者<literal>HAVING</>子句里出现。
2540-
禁止在其它子句里出现(比如<literal>WHERE</>子句),因为这些子句逻辑上在生成聚集结果之前计算
2539+
一个聚合表达式只能在<command>SELECT</>命令的结果列表或者<literal>HAVING</>子句里出现。
2540+
禁止在其它子句里出现(比如<literal>WHERE</>子句),因为这些子句逻辑上在生成聚合结果之前计算
25412541
</para>
25422542
<!--
25432543
<para>
@@ -2556,12 +2556,12 @@ SELECT string_agg(a ORDER BY a, ',') FROM table; -- incorrect
25562556
</para>
25572557
-->
25582558
<para>
2559-
如果一个聚集表达式出现在一个子查询里(参阅<xref linkend="sql-syntax-scalar-subqueries">
2560-
和<xref linkend="functions-subquery">),聚集通常是在子查询中进行计算
2561-
但是如果聚集的参数只包含外层查询的变量则例外:这个聚集会属于离他最近的外层查询
2562-
并且在该查询上进行计算。该聚集表达式整体上属于它出现的子查询对外层查询的引用
2563-
其作用相当于子查询每一次计算中的一个常量。前述限制(聚集表达式只能出现在结果列或者
2564-
<literal>HAVING</>子句中)只适用于聚集所属的查询层
2559+
如果一个聚合表达式出现在一个子查询里(参阅<xref linkend="sql-syntax-scalar-subqueries">
2560+
和<xref linkend="functions-subquery">),聚合通常是在子查询中进行计算
2561+
但是如果聚合的参数只包含外层查询的变量则例外:这个聚合会属于离他最近的外层查询
2562+
并且在该查询上进行计算。该聚合表达式整体上属于它出现的子查询对外层查询的引用
2563+
其作用相当于子查询每一次计算中的一个常量。前述限制(聚合表达式只能出现在结果列或者
2564+
<literal>HAVING</>子句中)只适用于聚合所属的查询层
25652565
</para>
25662566
</sect2>
25672567

@@ -2591,7 +2591,7 @@ SELECT string_agg(a ORDER BY a, ',') FROM table; -- incorrect
25912591
list) of the window function call.
25922592
The syntax of a window function call is one of the following:
25932593
-->
2594-
通过查询筛选出的行的某些部分,<firstterm>窗口调用函数</firstterm>实现了类似于聚集函数的功能
2594+
通过查询筛选出的行的某些部分,<firstterm>窗口调用函数</firstterm>实现了类似于聚合函数的功能
25952595
不同的是,窗口调用函数不需要将查询结果打包成一行输出&mdash;在查询输出中,每一行都是分开的。
25962596
然而,窗口调用函数可以扫描所有的行,根据窗口调用函数的分组规范(<literal>PARTITION BY</>列),
25972597
这些行可能会是当前行所在组的一部分。一个窗口调用函数的语法是下列之一:
@@ -2757,7 +2757,7 @@ UNBOUNDED FOLLOWING
27572757
<para>
27582758
<replaceable>value</> <literal>PRECEDING</>和<replaceable>value</> <literal>FOLLOWING</>
27592759
当前只允许<literal>ROWS</>模式。这也就意味着,框架从当前行之前或之后指定的行数启动或结束。
2760-
<replaceable>value</replaceable>必须是整型表达式,而不能包含变量,聚集函数,或者窗口函数。
2760+
<replaceable>value</replaceable>必须是整型表达式,而不能包含变量,聚合函数,或者窗口函数。
27612761
该值不能为空或负,但可以是零,表示只选择当前行本身。
27622762
</para>
27632763
<!--
@@ -2804,7 +2804,7 @@ UNBOUNDED FOLLOWING
28042804
-->
28052805
<para>
28062806
内置窗口函数在<xref linkend="functions-window-table">中有描述。其他窗口函数,
2807-
用户可以自己添加。同样,任意内置或用户自定义聚集函数可以同窗口函数一样使用
2807+
用户可以自己添加。同样,任意内置或用户自定义聚合函数可以同窗口函数一样使用
28082808
</para>
28092809
<!--
28102810
<para>
@@ -2818,9 +2818,9 @@ UNBOUNDED FOLLOWING
28182818
</para>
28192819
-->
28202820
<para>
2821-
使用<literal>*</>的语法可以用来调用无参数的聚集函数为窗口函数,如
2821+
使用<literal>*</>的语法可以用来调用无参数的聚合函数为窗口函数,如
28222822
<literal>count(*) OVER (PARTITION BY x ORDER BY y)</>。星号(<literal>*</>)
2823-
通常不用于非聚集的窗口函数。与通常的聚集函数不同,聚集窗口函数不允许在函数参数列中使用
2823+
通常不用于非聚合的窗口函数。与通常的聚合函数不同,聚合窗口函数不允许在函数参数列中使用
28242824
<literal>DISTINCT</>或<literal>ORDER BY</>。
28252825
</para>
28262826
<!--

0 commit comments

Comments
 (0)