개발 버전 :18 / Devel
지원되지 않은 버전 :12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2
이 문서는 지원되지 않는 버전의 PostgreSQL 용입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다3_스포츠 토토 베이 결과3버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

9.15. 토토 베이 기능 및 운영자

테이블 9-40토토 베이과 함께 사용할 수있는 연산자를 보여줍니다. (보다토토 캔 : 문서 : 9.3 : JSON 유형) 데이터.

표 9-40. 토토 베이 운영자

운영자 오른쪽 피연산자 유형 설명 example
- int 토토 베이 배열 요소 가져 오기 '[1,2,3]':: 토토 베이- 2
- 텍스트 토토 베이 개체 필드 ' "a": 1, "b": 2':: 토토 베이- 'b'
- int 토토 베이 배열 요소를 텍스트로 가져옵니다 '[1,2,3]':: 토토 베이- 2
- 텍스트 토토 베이 객체 필드를 텍스트로 가져옵니다 ' "a": 1, "b": 2':: 토토 베이- 'b'
# 텍스트 배열 지정된 경로에서 토토 베이 개체 가져 오기 ' "a": [1,2,3], "b": [4,5,6]':: 토토 베이# 'a, 2'
# 텍스트 배열 지정된 경로에서 텍스트로 토토 베이 객체를 가져옵니다 ' "A": [1,2,3], "B": [4,5,6]':: 토토 베이# 'a, 2'

테이블 9-41생성 및 생성 기능을 보여줍니다 토토 베이 조작 (참조토토 캔 : 문서 : 9.3 : JSON 유형) 데이터.

표 9-41. 토토 베이 지원 기능

function 반환 유형 설명 example 예제 결과
array_to_토토 베이 (anyArray [, pretty_bool]) 토토 베이 배열을 토토 베이으로 반환합니다. PostgreSQL 다차원 배열 토토 베이 배열 배열이됩니다. 라인 피드가 추가됩니다 치수 1 요소 인 경우pretty_boolis 진실. array_to_json ( '1,5, 99,100':: int []) [[1,5], [99,100]]
row_to_json (레코드 [, pretty_bool]) 토토 베이 행을 토토 베이으로 반환합니다. 레벨간에 라인 피드가 추가됩니다 1 요소 인 경우pretty_bool진실입니다. row_to_토토 베이 (Row (1, 'foo')) "f1": 1, "f2": "foo"
to_토토 베이 (Anylement) 토토 베이 값을 토토 베이으로 반환합니다. 데이터 유형이 내장되지 않은 경우 그리고 유형에서까지 캐스트가 있습니다.토토 베이, 캐스트 함수는 변환을 수행하는 데 사용됩니다. 그렇지 않으면 숫자, 부울 또는 널 이외의 다른 값에 대해 값, 텍스트 표현이 사용, 탈출 및 인용됩니다. 합법적 인 토토 베이입니다. to_json ( '프레드가 "안녕."':: 텍스트) "Fred Said \"Hi. \ ""
토토 베이_array_length (토토 베이) int 가장 바깥 쪽 토토 베이의 요소 수를 반환합니다 정렬. 토토 베이_array_length ( '[1,2,3, "f1": 1, "f2": [5,6], 4]') 5
토토 베이_each (토토 베이) 키 텍스트 설정, 값 토토 베이 가장 바깥 쪽 토토 베이 객체를 키/값 세트로 확장합니다. 한 쌍. 선택 *에서 토토 베이_EACH ( ' "a": "foo", "b": "bar" ')
키 | 값
-----+-------
 A | "foo"
 B | "술집"
토토 베이_ECH_TEXT (FROM_토토 베이 토토 베이) 키 텍스트 설정, 값 텍스트 가장 바깥 쪽 토토 베이 객체를 키/값 세트로 확장합니다. 한 쌍. 반환 된 값은 유형 텍스트입니다. 토토 베이_each_text에서 * 선택 * ( ' "a": "foo", "b": "bar" ')
키 | 값
-----+-------
 A | foo
 B | 술집
토토 베이_extract_path (from_토토 베이 토토 베이, variadic path_elems text []) 토토 베이 토토 베이 객체를 retuckpath_elems. 토토 베이_extract_path ( ' "f2": "f3": 1, "f4": "f5": 99, "f6": "foo"', 'f4') "f5": 99, "f6": "foo"
json_extract_path_text (from_토토 베이 json, variadic path_elems text []) 텍스트 토토 베이 객체를 returepath_elems. json_extract_path_text ( ' "f2": "f3": 1, "f4": "f5": 99, "f6": "foo"', 'f4', 'f6') foo
토토 베이_object_keys (토토 베이) 텍스트 설정 토토 베이 객체에서 키 세트를 반환합니다. 만"외부"개체가 표시됩니다. 토토 베이_object_keys ( ' "f1": "abc", "f2": "f3": "a", "F4": "B" ')
토토 베이_object_keys
-----------------
 F1
 F2
토토 베이_POPULE_RECORD (기본 요소, From_토토 베이 Json, [, use_json_as_text bool = false] Anylement 객체를 확장from_토토 베이열이 기본으로 정의 된 레코드 유형과 일치하는 행으로. 전환은 최선의 노력이 될 것입니다. 기본의 기둥 해당 키from_토토 베이의지 널 남겨 두십시오. 열이 두 번 이상 지정되면 마지막 가치가 사용됩니다. 선택 *에서 토토 베이_populate_record (null :: x, ' "a": 1, "b": 2')
a | 비
---+---
 1 | 2
토토 베이_POPULE_RECORDSET (BASE AYLENMENT, From_토토 베이 Json, [, use_json_as_text bool = false] 모든 요소 설정 가장 바깥 쪽 객체 세트를 확장from_토토 베이열이 일치하는 세트에 기본으로 정의 된 레코드 유형. 전환은 최선의 노력이 될 것입니다. 해당 키가없는베이스의 열From_토토 베이NULL이 남아 있습니다. 열이있는 경우 두 번 이상 지정되면 마지막 값이 사용됩니다. 선택 *에서 토토 베이_populate_recordset (null :: x, '[ "a": 1, "b": 2, "a": 3, "b": 4]
a | 비
---+---
 1 | 2
 3 | 4
토토 베이_array_elements (토토 베이) 토토 베이 SETOF 토토 베이 토토 베이 배열을 토토 베이 요소 세트로 확장합니다. 토토 베이_array_elements ( '[1, true, [2, false]] ')
값
----------
 1
 진실
 [2, false]

참고 :the토토 베이기능 및 연산자는 유형보다 더 엄격한 유효성 요구 사항을 부과 할 수 있습니다 입력 기능. 특히, 그들은 훨씬 더 자세히 확인합니다 외부 문자를 지정하기 위해 유니 코드 대리 쌍을 사용합니다. 유니 코드 기본 다국어 평면이 정확합니다.

참고 :이러한 기능과 연산자 중 다수가 변환됩니다 유니 코드는 토토 베이 텍스트에서 적절한 UTF8 문자로 빠져 나옵니다. 데이터베이스 인코딩이 UTF8 인 경우 다른 인코딩에서 탈출 시퀀스는 ASCII 문자 및 기타 코드 포인트에 대한 것이어야합니다. 유니 코드 이스케이프 시퀀스에서 오류가 발생합니다. 일반적으로 토토 베이에서 유니 코드 탈출을 비우프 8과 혼합하지 않는 것이 가장 좋습니다. 가능하면 데이터베이스 인코딩.

참고 :thePostgreSQL : 문서 : 9.3 : 젠 토토확장 에서 캐스트hstoreto토토 베이hstore값은 문자열 값이 아닌 토토 베이 객체로 표시됩니다.

참조PostgreSQL : 문서 : 9.3 : 토토 커뮤니티 함수집계 함수 정보토토 베이_AGG기록 값을 토토 베이으로 효율적으로 집계하는 곳.