{"Entry":{"collection":"func","key":"upper","name":"upper","aliases":[],"metadata":{"changed_in":["9.2","14"],"changes":[{"descriptions_changed":true,"doc_overhaul":false,"from":"7.4","group_changed":null,"signatures":{"added":[],"removed":[]},"status":"changed","to":"8.0"},{"descriptions_changed":true,"doc_overhaul":false,"from":"8.4","group_changed":null,"signatures":{"added":[],"removed":[]},"status":"changed","to":"9.0"},{"descriptions_changed":false,"doc_overhaul":false,"from":"9.1","group_changed":null,"signatures":{"added":["upper ( anyrange ) → range's element type"],"removed":[]},"status":"changed","to":"9.2"},{"descriptions_changed":false,"doc_overhaul":true,"from":"12","group_changed":null,"signatures":{"added":[],"removed":[]},"status":"changed","to":"13"},{"descriptions_changed":false,"doc_overhaul":false,"from":"13","group_changed":null,"signatures":{"added":["upper ( anymultirange ) → anyelement"],"removed":[]},"status":"changed","to":"14"}],"content_hash":"f529f39a2897da6260deab76549974404178b4a20a4a67893e6fb76ba02eb341","derived_content_hash":"4c386c9224444884ed9d3d599fb962a19d5478711b42d1fe5d896c671d5b349f","documentation_refresh":{"batch":"20261113","original_source_rev":"wiki-repair-20261023:47ed20d5d88be11d089e24df61b2a374e21326ea6ed080aecb3234a4cadc3090","versions":{"14":"14.25","15":"15.20","16":"16.16","17":"17.12","18":"18.7","19":"19rc2"}},"first_version":"7.1","group":"string","group_label":"String Functions And Operators","groups":["string","range"],"imported_at":"2026-09-27T17:57:28.460139+08:00","last_version":"20","name":"upper","name_key":"upper","position":3057,"present_in":["7.1","7.2","7.3","7.4","8.0","8.1","8.2","8.3","8.4","9.0","9.1","9.2","9.3","9.4","9.5","9.6","10","11","12","13","14","15","16","17","18","19","20"],"repair_provenance":{"original_source_revision":"wiki-repair-20261023:f5bb159f2da2e0ee2b93752c6e51ba452761ebb4a86b80648ca6ef391c59964c","receipt_sha256":"2e6fabe97d91dc87ec7587510c649b076039aba3241b67f3317a4cb6f43befa4","repair":"wiki-repair-20261023"},"signature":"upper ( text ) → text","signature_count":3,"slug":"upper","source_rev":"wiki-repair-20261023:47ed20d5d88be11d089e24df61b2a374e21326ea6ed080aecb3234a4cadc3090","summary":"Converts the string to all upper case, according to the rules of the database's locale.","summary_zh":""}},"Definition":{"Collection":"func","Key":"upper","SourceDatabase":"center","Version":"18","SourceTable":"func","SourceKey":"upper","SourceRevision":"wiki-repair-20261023:47ed20d5d88be11d089e24df61b2a374e21326ea6ed080aecb3234a4cadc3090","Facts":{"description":"Converts the string to all upper case, according to the rules of the database's locale.","description_html":"Converts the string to all upper case, according to the rules of the database's locale.","description_zh":"根据数据库的区域设置规则，将字符串转换为全部大写。","description_zh_html":"根据数据库的区域设置规则，将字符串转换为全部大写。","doc":{"anchor":"FUNCTIONS-STRING-SQL","file":"functions-string.html","sha256":"dbe9f91e55c35969d99a8d2697b6f7bd5388a24ccc2b89706a666f176025f1e2","slug":"18"},"documentation_revision":{"inputs":[{"file":"functions-range.html","kind":"same-version-reviewed-manual","locale":"en","sha256":"adc48b5f4dd16fd7079e4b9821ef1877bf4bfa89274da44982672598fe53f9a5","version":"18.7"},{"file":"functions-string.html","kind":"same-version-reviewed-manual","locale":"en","sha256":"dbe9f91e55c35969d99a8d2697b6f7bd5388a24ccc2b89706a666f176025f1e2","version":"18.7"},{"file":"functions-range.html","kind":"same-version-reviewed-manual","locale":"zh-Hans","sha256":"0cf73372e4a803a8728ac799c436646b9273bfbf0bf645cee112401eaff4de59","version":"18.7"},{"file":"functions-string.html","kind":"same-version-reviewed-manual","locale":"zh-Hans","sha256":"7eecd3bb343149124be0476a539f3c682476eab2a15489a0e0ad06fbb769ea9e","version":"18.7"}],"release":"18.7","runtime_remeasured":false,"source_revision":"pgdoc:b9f0e7232f60f380d642ac9b99226606c254b552"},"group":"string","group_label":"字符串函数和操作符","lang":"en","layout":"table-new","pages":["functions-string.html","functions-range.html"],"prose_only":false,"signatures":[{"description":"Converts the string to all upper case, according to the rules of the database's locale.","description_html":"Converts the string to all upper case, according to the rules of the database's locale.","description_zh":"根据数据库的区域设置规则，将字符串转换为全部大写。","description_zh_html":"根据数据库的区域设置规则，将字符串转换为全部大写。","examples":[{"expr":"upper('tom')","result":"TOM"}],"html":"\u003ccode class=\"function\"\u003eupper\u003c/code\u003e ( \u003ccode class=\"type\"\u003etext\u003c/code\u003e ) → \u003ccode class=\"returnvalue\"\u003etext\u003c/code\u003e","returns":"text","text":"upper ( text ) → text","zh_from":"same-version-manual"},{"description":"Extracts the upper bound of the range (NULL if the range is empty or has no upper bound).","description_html":"Extracts the upper bound of the range (\u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e if the range is empty or has no upper bound).","description_zh":"提取范围的上界（如果范围为空或没有上界，则返回 NULL）。","description_zh_html":"提取范围的上界（如果范围为空或没有上界，则返回 \u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e）。","examples":[{"expr":"upper(numrange(1.1,2.2))","result":"2.2"}],"html":"\u003ccode class=\"function\"\u003eupper\u003c/code\u003e ( \u003ccode class=\"type\"\u003eanyrange\u003c/code\u003e ) → \u003ccode class=\"returnvalue\"\u003eanyelement\u003c/code\u003e","returns":"anyelement","text":"upper ( anyrange ) → anyelement","zh_from":"same-version-manual"},{"description":"Extracts the upper bound of the multirange (NULL if the multirange is empty or has no upper bound).","description_html":"Extracts the upper bound of the multirange (\u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e if the multirange is empty or has no upper bound).","description_zh":"提取多范围的上界（如果多范围为空或没有上界，则返回 NULL）。","description_zh_html":"提取多范围的上界（如果多范围为空或没有上界，则返回 \u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e）。","examples":[{"expr":"upper('{[1.1,2.2)}'::nummultirange)","result":"2.2"}],"html":"\u003ccode class=\"function\"\u003eupper\u003c/code\u003e ( \u003ccode class=\"type\"\u003eanymultirange\u003c/code\u003e ) → \u003ccode class=\"returnvalue\"\u003eanyelement\u003c/code\u003e","returns":"anyelement","text":"upper ( anymultirange ) → anyelement","zh_from":"same-version-manual"}],"translation_provenance":{"inputs":[{"kind":"current-pgdoc-translation","path":"/Users/vonng/pgsty/pgdoc/zh/18/html/functions-string.html","sha256":"0446377e0eccc9299099dc4b4b293204c337e3abefcdc396e9698bc54dd1080b"}],"kind":"same-version-pgdoc","locale":"zh-Hans","source_revision":"b1b500221dbe5437cfca004d6b04d3f6e422765d","version":"18"},"zh_from":"same-version-manual"},"ManualEvidence":{"doc":{"anchor":"FUNCTIONS-STRING-SQL","file":"functions-string.html","sha256":"dbe9f91e55c35969d99a8d2697b6f7bd5388a24ccc2b89706a666f176025f1e2","slug":"18"}},"MeasuredEvidence":{}},"Text":{"Collection":"func","Key":"upper","SourceDatabase":"center","Version":"18","Locale":"en","Title":"upper","Summary":"Converts the string to all upper case, according to the rules of the database's locale.","BodyHTML":"Converts the string to all upper case, according to the rules of the database\u0026#39;s locale.","SourceRevision":"wiki-repair-20261023:47ed20d5d88be11d089e24df61b2a374e21326ea6ed080aecb3234a4cadc3090","ContentHash":"2eefc0aee6ed061f97890a0affffc6c747503fd6d0e459dfd8639127d4fcbd35","Payload":{"description":"Converts the string to all upper case, according to the rules of the database's locale.","description_html":"Converts the string to all upper case, according to the rules of the database's locale.","signatures":[{"description":"Converts the string to all upper case, according to the rules of the database's locale.","description_html":"Converts the string to all upper case, according to the rules of the database's locale.","description_zh":"根据数据库的区域设置规则，将字符串转换为全部大写。","description_zh_html":"根据数据库的区域设置规则，将字符串转换为全部大写。","examples":[{"expr":"upper('tom')","result":"TOM"}],"html":"\u003ccode class=\"function\"\u003eupper\u003c/code\u003e ( \u003ccode class=\"type\"\u003etext\u003c/code\u003e ) → \u003ccode class=\"returnvalue\"\u003etext\u003c/code\u003e","returns":"text","text":"upper ( text ) → text","zh_from":"same-version-manual"},{"description":"Extracts the upper bound of the range (NULL if the range is empty or has no upper bound).","description_html":"Extracts the upper bound of the range (\u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e if the range is empty or has no upper bound).","description_zh":"提取范围的上界（如果范围为空或没有上界，则返回 NULL）。","description_zh_html":"提取范围的上界（如果范围为空或没有上界，则返回 \u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e）。","examples":[{"expr":"upper(numrange(1.1,2.2))","result":"2.2"}],"html":"\u003ccode class=\"function\"\u003eupper\u003c/code\u003e ( \u003ccode class=\"type\"\u003eanyrange\u003c/code\u003e ) → \u003ccode class=\"returnvalue\"\u003eanyelement\u003c/code\u003e","returns":"anyelement","text":"upper ( anyrange ) → anyelement","zh_from":"same-version-manual"},{"description":"Extracts the upper bound of the multirange (NULL if the multirange is empty or has no upper bound).","description_html":"Extracts the upper bound of the multirange (\u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e if the multirange is empty or has no upper bound).","description_zh":"提取多范围的上界（如果多范围为空或没有上界，则返回 NULL）。","description_zh_html":"提取多范围的上界（如果多范围为空或没有上界，则返回 \u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e）。","examples":[{"expr":"upper('{[1.1,2.2)}'::nummultirange)","result":"2.2"}],"html":"\u003ccode class=\"function\"\u003eupper\u003c/code\u003e ( \u003ccode class=\"type\"\u003eanymultirange\u003c/code\u003e ) → \u003ccode class=\"returnvalue\"\u003eanyelement\u003c/code\u003e","returns":"anyelement","text":"upper ( anymultirange ) → anyelement","zh_from":"same-version-manual"}]}},"RequestedLocale":"en","Fallback":false,"Versions":["10","11","12","13","14","15","16","17","18","19","20","7.1","7.2","7.3","7.4","8.0","8.1","8.2","8.3","8.4","9.0","9.1","9.2","9.3","9.4","9.5","9.6"],"Locales":["en","zh-Hans"],"Signatures":[{"Version":"18","Ordinal":0,"Hash":"673502930c6fb994031514d172ed73b694ee738bbf51a9af7b17b18a5554a451","Text":"upper ( text ) → text","Returns":"text","Payload":{"description":"Converts the string to all upper case, according to the rules of the database's locale.","description_html":"Converts the string to all upper case, according to the rules of the database's locale.","description_zh":"根据数据库的区域设置规则，将字符串转换为全部大写。","description_zh_html":"根据数据库的区域设置规则，将字符串转换为全部大写。","examples":[{"expr":"upper('tom')","result":"TOM"}],"html":"\u003ccode class=\"function\"\u003eupper\u003c/code\u003e ( \u003ccode class=\"type\"\u003etext\u003c/code\u003e ) → \u003ccode class=\"returnvalue\"\u003etext\u003c/code\u003e","returns":"text","text":"upper ( text ) → text","zh_from":"same-version-manual"}},{"Version":"18","Ordinal":1,"Hash":"aef6598c7f531a94dfa401285262fc9f0d2aa80baf070f312da43992c8e46059","Text":"upper ( anyrange ) → anyelement","Returns":"anyelement","Payload":{"description":"Extracts the upper bound of the range (NULL if the range is empty or has no upper bound).","description_html":"Extracts the upper bound of the range (\u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e if the range is empty or has no upper bound).","description_zh":"提取范围的上界（如果范围为空或没有上界，则返回 NULL）。","description_zh_html":"提取范围的上界（如果范围为空或没有上界，则返回 \u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e）。","examples":[{"expr":"upper(numrange(1.1,2.2))","result":"2.2"}],"html":"\u003ccode class=\"function\"\u003eupper\u003c/code\u003e ( \u003ccode class=\"type\"\u003eanyrange\u003c/code\u003e ) → \u003ccode class=\"returnvalue\"\u003eanyelement\u003c/code\u003e","returns":"anyelement","text":"upper ( anyrange ) → anyelement","zh_from":"same-version-manual"}},{"Version":"18","Ordinal":2,"Hash":"bdce20ed3b63960ec93e1b5f9dea745a9aa9ee7b22991f8c0288141ece4e4c26","Text":"upper ( anymultirange ) → anyelement","Returns":"anyelement","Payload":{"description":"Extracts the upper bound of the multirange (NULL if the multirange is empty or has no upper bound).","description_html":"Extracts the upper bound of the multirange (\u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e if the multirange is empty or has no upper bound).","description_zh":"提取多范围的上界（如果多范围为空或没有上界，则返回 NULL）。","description_zh_html":"提取多范围的上界（如果多范围为空或没有上界，则返回 \u003ccode class=\"literal\"\u003eNULL\u003c/code\u003e）。","examples":[{"expr":"upper('{[1.1,2.2)}'::nummultirange)","result":"2.2"}],"html":"\u003ccode class=\"function\"\u003eupper\u003c/code\u003e ( \u003ccode class=\"type\"\u003eanymultirange\u003c/code\u003e ) → \u003ccode class=\"returnvalue\"\u003eanyelement\u003c/code\u003e","returns":"anyelement","text":"upper ( anymultirange ) → anyelement","zh_from":"same-version-manual"}}],"Spellings":null,"SQLState":null,"Evidence":null}
