| PostgreSQL 9.3.25 문서 | ||||
|---|---|---|---|---|
| PostgreSQL : 문서 : 9.3 : 롤 토토 기능 | PostgreSQL : 문서 : 9.3 : 토토 사이트 추천 및 연산자 | 9장. 기능 및 운영자 | PostgreSQL : 문서 : 9.3 : 스포츠 토토 베트맨 조작 함수 | |
테이블 9-40토토 베이과 함께 사용할 수 있는 연산자를 표시합니다. (참조섹션 8.14) 데이터.
표 9-40. 토토 베이 연산자
| 운영자 | 오른쪽 피연산자 유형 | 설명 | 예 |
|---|---|---|---|
| - | int | 토토 베이 배열 요소 가져오기 | '[1,2,3]'::토토 베이-2 |
| - | 텍스트 | 토토 베이 객체 필드 가져오기 | '"a":1,"b":2'::토토 베이-'b' |
| - | int | JSON 배열 요소를 텍스트로 가져오기 | '[1,2,3]'::토토 베이-2 |
| - | 텍스트 | JSON 개체 필드를 텍스트로 가져오기 | '"a":1,"b":2'::토토 베이-'b' |
| # | 텍스트 배열 | 지정된 경로에서 토토 베이 객체 가져오기 | '"a":[1,2,3],"b":[4,5,6]'::토토 베이#'a,2' |
| # | 텍스트 배열 | 지정된 경로의 JSON 객체를 텍스트로 가져오기 | '"a":[1,2,3],"b":[4,5,6]'::토토 베이#'a,2' |
테이블 9-41생성과 사용 가능한 기능을 보여줍니다. 토토 베이 조작(참조섹션 8.14) 데이터.
표 9-41. JSON 지원 함수
| 기능 | 반환 유형 | 설명 | 예 | 예시 결과 |
|---|---|---|---|---|
| array_to_토토 베이(anyarray [, Pretty_bool]) | 토토 베이 | 배열을 JSON으로 반환합니다. PostgreSQL 다차원 배열 배열의 JSON 배열이 됩니다. 사이에 줄바꿈이 추가됩니다. 다음과 같은 경우 차원 1 요소pretty_bool이다 사실이다. | array_to_토토 베이('1,5,99,100'::int[]) | [[1,5],[99,100]] |
| row_to_토토 베이(레코드 [, Pretty_bool]) | 토토 베이 | 행을 JSON으로 반환합니다. 레벨 사이에 줄바꿈이 추가됩니다. 다음과 같은 경우 요소 1개pretty_bool사실입니다. | row_to_토토 베이(row(1,'foo')) | "f1":1,"f2":"foo" |
| to_토토 베이(모든 요소) | 토토 베이 | 값을 JSON으로 반환합니다. 데이터 유형이 내장되어 있지 않은 경우 유형에서 다음으로 캐스트가 있습니다.토토 베이, 캐스트 함수는 변환을 수행하는 데 사용됩니다. 그렇지 않으면 숫자, 부울 또는 null 이외의 값에 대해 값을 사용하면 텍스트 표현이 사용되고 이스케이프 처리되며 인용됩니다. 그것은 합법적인 JSON입니다. | to_토토 베이('프레드가 "안녕하세요."라고 말했습니다.'::text) | "프레드가 \"안녕\"이라고 말했습니다." |
| 토토 베이_array_length(토토 베이) | int | 가장 바깥쪽 토토 베이의 요소 수를 반환합니다. 배열. | 토토 베이_array_length('[1,2,3,"f1":1,"f2":[5,6],4]') | 5 |
| 토토 베이_each(토토 베이) | SETOF 키 텍스트, 값 토토 베이 | 가장 바깥쪽 토토 베이 개체를 키/값 세트로 확장합니다. 쌍. | 토토 베이_each('"a":"foo", "b":"바"') |
키 | 가치 ------+------- | "푸" 비 | "바" |
| 토토 베이_each_text(from_토토 베이 토토 베이) | SETOF 키 텍스트, 값 텍스트 | 가장 바깥쪽 토토 베이 개체를 키/값 세트로 확장합니다. 쌍. 반환된 값은 텍스트 유형입니다. | 토토 베이_each_text('"a":"foo", "b":"바"') |
키 | 가치 ------+------- | 푸 비 | 바 |
| 토토 베이_extract_path(from_토토 베이 토토 베이, VARIADIC path_elems 텍스트[]) | 토토 베이 | 다음이 가리키는 JSON 객체를 반환합니다.path_elems. | 토토 베이_extract_path('"f2":"f3":1,"f4":"f5":99,"f6":"foo"','f4') | "f5":99,"f6":"foo" |
| 토토 베이_extract_path_text(from_토토 베이 토토 베이, VARIADIC 경로_요소 텍스트[]) | 텍스트 | 다음이 가리키는 JSON 객체를 반환합니다.path_elems. | 토토 베이_extract_path_text('"f2":"f3":1,"f4":"f5":99,"f6":"foo"','f4', 'f6') | foo |
| 토토 베이_object_keys(토토 베이) | SETOF 텍스트 | 토토 베이 개체의 키 세트를 반환합니다. 오직"외부"객체가 표시됩니다. | 토토 베이_object_keys('"f1":"abc","f2":"f3":"a", "f4":"b"') |
토토 베이_object_keys ------------------ f1 f2 |
| 토토 베이_populate_record(기본 모든 요소, from_토토 베이 토토 베이, [, use_토토 베이_as_text bool=false] | 모든 요소 | 객체를 확장합니다from_토토 베이해당 열이 base에 의해 정의된 레코드 유형과 일치하는 행에. 전환은 최선의 노력을 다할 것입니다. 베이스에 기둥이 없습니다. 해당 키 입력from_토토 베이할 것이다 null로 남습니다. 열이 두 번 이상 지정된 경우 마지막 값이 사용됩니다. | 토토 베이_populate_record(null::x, '"a":1,"b":2') |
a | 비 ---+--- 1 | 2 |
| 토토 베이_populate_recordset(기본 모든 요소, from_토토 베이 토토 베이, [, use_토토 베이_as_text bool=false] | SETOF 모든 요소 | 가장 바깥쪽 개체 집합을 확장합니다.from_토토 베이열이 일치하는 세트로 베이스로 정의된 레코드 유형입니다. 전환은 최선의 노력을 다할 것입니다. 해당 키가 없는 기본 열from_토토 베이널로 남게 됩니다. 열이 두 번 이상 지정하면 마지막 값이 사용됩니다. | 다음에서 *를 선택하세요 토토 베이_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,거짓]]') |
값 ----------- 1 사실 [2,거짓] |
참고:그토토 베이함수 및 연산자는 해당 유형보다 더 엄격한 유효성 요구 사항을 부과할 수 있습니다. 입력 기능. 특히 그들은 훨씬 더 자세히 확인합니다. 외부 문자를 지정하기 위해 유니코드 서로게이트 쌍을 사용하는 행위 유니코드 기본 다국어 평면이 정확합니다.
참고:이러한 함수와 연산자 중 상당수는 유니코드는 JSON 텍스트에서 적절한 UTF8 문자로 이스케이프됩니다. 데이터베이스 인코딩이 UTF8인 경우. 다른 인코딩에서는 이스케이프 시퀀스는 ASCII 문자 및 기타 코드 포인트에 대한 것이어야 합니다. 유니코드 이스케이프 시퀀스를 사용하면 오류가 발생합니다. 일반적으로, JSON에서 유니코드 이스케이프를 UTF8이 아닌 것과 혼합하지 않는 것이 가장 좋습니다. 가능하다면 데이터베이스 인코딩을 수행하세요.
참고:그PostgreSQL : 문서 : 9.3 : 젠 토토확장 프로그램이 있습니다 캐스트hstore에토토 베이, 변환되었으므로hstore값은 문자열 값이 아닌 토토 베이 개체로 표시됩니다.
또한 참조PostgreSQL : 문서 : 9.3 : 토토 커뮤니티 함수집계 함수에 대해토토 베이_agg레코드 값을 토토 베이으로 효율적으로 집계합니다.
| 이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
| XML 함수 | 위로 | 시퀀스 조작 기능 |