函数的 ROWS 和 COST 规范
已记录的来源状态与原始语言说明;缺少版本证据时明确标为未知。
来源快照记录 PostgreSQL 8.1–18 的变化节点;历史矩阵独立记录 7.4–18 的状态。两者均未记录 PostgreSQL 19 或 20 的支持状态,较新版本明确保留为未知。这些来源声明与运行测量相互独立。
过程语言
说明
现在可以为过程函数指定 CPU 代价和预期行数,以向规划器提供更好的提示
所选版本: PostgreSQL 18
支持
比较版本
原始文档链接
已记录旧标识: 14
完整来源事实与出处
yaml · center · 1dd22bf9a7f3ec325b894e2836fda535a25529f246a94dd41d6abbfe9997f7fd
{
"Key": "rows-and-cost-specification-for-functions",
"SourceKind": "yaml",
"SourceDatabase": "center",
"SourceTable": "featurematrix.yaml",
"SourceKey": "ROWS and COST specification for functions",
"SourceHash": "1dd22bf9a7f3ec325b894e2836fda535a25529f246a94dd41d6abbfe9997f7fd",
"Name": "ROWS and COST specification for functions",
"NameLocale": "en",
"GroupKey": "procedural-languages",
"GroupName": "Procedural Languages",
"GroupLocale": "en",
"Ordinal": 17,
"GroupOrder": 19,
"Facts": {
"feature": {
"description": "CPU costs and the number of expected rows can now be specified for procedural functions to give better hints to the planner",
"name": "ROWS and COST specification for functions",
"versions": {
"8.3": "Yes"
}
},
"group": "Procedural Languages",
"versions": {
"max": 18,
"min": 8.1
}
},
"Cells": [
{
"Version": "10",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "11",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "12",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "13",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "14",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "15",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "16",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "17",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "18",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "8.1",
"State": "no",
"EvidenceKind": "yaml-default-no",
"TransitionVersion": "",
"Supported": false,
"Original": "No"
},
{
"Version": "8.2",
"State": "no",
"EvidenceKind": "yaml-default-no",
"TransitionVersion": "",
"Supported": false,
"Original": "No"
},
{
"Version": "8.3",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "8.4",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "9.0",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "9.1",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "9.2",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "9.3",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "9.4",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "9.5",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
},
{
"Version": "9.6",
"State": "yes",
"EvidenceKind": "yaml-transition",
"TransitionVersion": "8.3",
"Supported": true,
"Original": "Yes"
}
],
"Texts": [
{
"Locale": "en",
"Title": "ROWS and COST specification for functions",
"BodyHTML": "\u003cp\u003eCPU costs and the number of expected rows can now be specified for procedural functions to give better hints to the planner\u003c/p\u003e\n",
"SourceHash": "1dd22bf9a7f3ec325b894e2836fda535a25529f246a94dd41d6abbfe9997f7fd",
"ContentHash": "052b6fcbc945707f4039136563a4fc25f085ef3a1a830f090cf046bc80f12f44",
"Payload": {
"description": "CPU costs and the number of expected rows can now be specified for procedural functions to give better hints to the planner",
"name": "ROWS and COST specification for functions",
"versions": {
"8.3": "Yes"
}
}
},
{
"Locale": "zh-Hans",
"Title": "函数的 ROWS 和 COST 规范",
"BodyHTML": "\u003cp\u003e现在可以为过程函数指定 CPU 代价和预期行数,以向规划器提供更好的提示\u003c/p\u003e\n",
"SourceHash": "071091951021357a5f492adb04caed6febf4d315ac2626ca027a48dd8ec01d50",
"ContentHash": "9e24eeb16cae71e1c47840d6a3143bf89e9ecae6d0161499577807ef1fc58b93",
"Payload": {
"description": "现在可以为过程函数指定 CPU 代价和预期行数,以向规划器提供更好的提示",
"name": "函数的 ROWS 和 COST 规范"
}
}
],
"GroupTitles": {
"en": "Procedural Languages",
"zh-Hans": "过程语言"
},
"LegacyIDs": [
"14"
]
}