9.25. 반환 기능 설정

이 섹션에서는 둘 이상의 행을 토토 핫할 수 있는 함수를 설명합니다. 이 클래스에서 가장 널리 사용되는 함수는 시리즈 생성 함수입니다.표 9.63그리고표 9.64. 기타 보다 전문화된 집합 토토 핫 기능은 이 설명서의 다른 부분에서 설명됩니다. 참조섹션 7.2.1.4여러 집합 토토 핫 함수를 결합하는 방법.

표 9.63. 시리즈 생성 함수

기능

설명

generate_series ( 시작 정수, 중지 정수 [, 단계 정수 ] ) → 정수 집합

generate_series ( 시작 비긴트, 중지 비긴트 [, 단계 비긴트 ] ) → setof bigint

generate_series ( 시작 숫자, 중지 숫자 [, 단계 숫자 ] ) → 숫자 집합

다음에서 일련의 값을 생성합니다.시작중지, 단계 크기는단계. 단계기본값은 1입니다.

generate_series ( 시작 타임스탬프, 중지 타임스탬프, 단계 간격 ) → 타임스탬프 집합

generate_series ( 시작 시간대가 포함된 타임스탬프, 중지 시간대가 포함된 타임스탬프, 단계 간격 ) → 시간대를 포함한 타임스탬프 집합

다음에서 일련의 값을 생성합니다.시작중지, 단계 크기는단계.


언제단계양수이면 0개의 행이 토토 핫됩니다.시작보다 큼중지. 반대로, 언제단계음수이면 0개의 행이 토토 핫됩니다.시작다음보다 작음중지. 입력이 다음과 같은 경우에도 0개의 행이 반환됩니다.NULL. 오류입니다.단계0이 됩니다. 몇 가지 예는 다음과 같습니다.

SELECT * FROM generate_series(2,4);
 generate_series
-----------------
               2
               3
               4
(3열)

SELECT * FROM generate_series(5,1,-2);
 generate_series
-----------------
               5
               3
               1
(3열)

SELECT * FROM generate_series(4,3);
 generate_series
-----------------
(0행)

SELECT generate_series(1.1, 4, 1.3);
 generate_series
-----------------
             1.1
             2.4
             3.7
(3열)

-- 이 예는 날짜와 정수 연산자를 사용합니다.
generate_series(0,14,7) AS s(a)에서 current_date + s.a AS 날짜를 선택하세요.
   날짜
------------
 2004-02-05
 2004-02-12
 2004-02-19
(3열)

SELECT * FROM generate_series('2008-03-01 00:00'::타임스탬프,
                              '2008-03-04 12:00', '10시간');
   generate_series
--------
 2008-03-01 00:00:00
 2008-03-01 10:00:00
 2008-03-01 20:00:00
 2008-03-02 06:00:00
 2008-03-02 16:00:00
 2008-03-03 02:00:00
 2008-03-03 12:00:00
 2008-03-03 22:00:00
 2008-03-04 08:00:00
(9행)

표 9.64. 첨자 생성 함수

기능

설명

generate_subscripts ( 배열 모든 배열, 어두움 정수 ) → 정수 집합

의 유효한 아래 첨자로 구성된 시리즈를 생성합니다.어두움주어진 배열의 '번째 차원입니다.

generate_subscripts ( 배열 모든 배열, 어두움 정수, 역방향 부울 ) → 정수 집합

의 유효한 아래 첨자로 구성된 시리즈를 생성합니다.어두움17747_17788역방향이 true이면 계열을 역순으로 토토 핫합니다.


generate_subscripts은 주어진 배열의 지정된 차원에 대해 유효한 첨자 세트를 생성하는 편의 함수입니다. 요청된 차원이 없거나 입력이 다음과 같은 경우 배열에 대해 0개의 행이 반환됩니다.NULL. 몇 가지 예는 다음과 같습니다.

-- 기본 사용법:
SELECT generate_subscripts('NULL,1,NULL,2'::int[], 1) AS s;
 초
---
 1
 2
 3
 4
(4열)

-- 배열, 아래 첨자 및 아래 첨자 표시
-- 값에는 하위 쿼리가 필요합니다.
SELECT * FROM 배열;
         에
-------
 -1,-2
 100,200,300

함수가발신절 뒤에 다음이 붙음순서 포함, 아비긴트열은 함수의 출력 열에 추가됩니다. 이 열은 1부터 시작하여 함수 출력의 각 행에 대해 1씩 증가합니다. 이는 다음과 같은 함수를 반환하는 집합의 경우에 가장 유용합니다.unnest().

-- ORDINALITY를 사용하여 토토 핫 함수를 설정합니다.
SELECT * FROM pg_ls_dir('.') WITH ORDINALITY AS t(ls,n);
       ls | 엔
-----+------
 pg_serial |  1
 pg_twophase |  2
 postmaster.opts |  3
 pg_notify |  4
 postgresql.conf |  5
 pg_tblspc |  6
 로그파일 |  7
 베이스 |  8
 postmaster.pid |  9
 pg_ident.conf | 10
 글로벌 | 11
 pg_xact | 12
 pg_스냅샷 | 13
 pg_multixact | 14
 PG_버전 | 15
 pg_wal | 16
 pg_hba.conf | 17
 pg_stat_tmp | 18
 pg_subtrans | 19
(19행)

수정사항 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.