이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.Postgresql: Tài liệu: 17: 9.21. Hàm tổ토토 hợp버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

9.15. 토토 사이트 함수

토토 사이트 함수단일 계산 입력 값 집합의 결과 값입니다.테이블 9-37내장 토토 사이트 함수를 표시합니다. 특별한 토토 사이트 함수에 대한 구문 고려 사항은 다음에 설명되어 있습니다.섹션 4.2.7. 문의PostgreSQL : 문서 : 8.0 : 스포츠 토토 베트맨 함수추가 소개 정보를 확인하세요.

표 9-37. 토토 사이트 함수

기능 인수 유형 반환 유형 설명
평균(표현) smallint, 정수, 비긴트, 진짜, 더블 정밀도, 숫자또는간격 숫자모든 정수 유형의 경우 인수,배정밀도에 대한 부동 소수점 인수. 그렇지 않으면 다음과 같습니다. 인수 데이터 유형 모든 입력의 평균(산술 평균) 값
bit_and(표현) smallint, 정수, 비긴트또는비트 인수 데이터 유형과 동일 null이 아닌 모든 입력 값의 비트별 AND 또는 null 없다면
bit_or(표현) smallint, 정수, 비긴트또는비트 인수 데이터 유형과 동일 null이 아닌 모든 입력 값의 비트별 OR 또는 null 없다면
bool_and(표현) 부울 부울 모든 입력 값이 true인 경우 true, 그렇지 않은 경우 거짓
bool_or(표현) 부울 부울 적어도 하나의 입력 값이 true이면 true이고, 그렇지 않으면 false입니다. 거짓
개수(*) 비긴트 입력값 개수
개수(표현) 모든 비긴트 값이 해당되는 입력 값의 수표현아님 널
모든(표현) 부울 부울 다음과 동일함bool_and
최대(표현) 모든 숫자, 문자열 또는 날짜/시간 유형 인수 유형과 동일 최대값표현모든 입력에 걸쳐 값
분(표현) 모든 숫자, 문자열 또는 날짜/시간 유형 인수 유형과 동일 최소값표현모든 입력에 걸쳐 값
stddev(표현) smallint, 정수, 비긴트, 실제, 더블 정밀도또는숫자 배정밀도용 부동 소수점 인수, 그렇지 않은 경우숫자 입력 값의 샘플 표준 편차
합계(표현) smallint, 정수, 비긴트, 진짜, 더블 정밀도, 숫자또는간격 비긴트forsmallint또는정수인수,숫자for비긴트인수,더블 정밀도부동 소수점 인수의 경우, 그렇지 않은 경우 인수 데이터 유형과 동일 합계표현모든 입력 값에 걸쳐
변동(표현) 작은int, 정수, 비긴트, 진짜, 더블 정밀도또는숫자 배정밀도용 부동 소수점 인수, 그렇지 않은 경우숫자 입력 값의 샘플 분산(제곱의 표본 표준편차)

다음을 제외하고는 주의해야 합니다.개수, 이러한 함수는 다음과 같은 경우 null 값을 반환합니다. 행이 선택되지 않았습니다. 특히,행이 없으면 0이 아닌 null을 반환합니다. 기대할 수도 있습니다.합체함수 필요한 경우 null을 0으로 대체하는 데 사용될 수 있습니다.

참고:부울 집계bool_and그리고bool_or표준 SQL에 해당 토토 사이트마다그리고모든또는일부. 에 관해서는아무거나그리고일부, 표준에 모호함이 있는 것 같습니다. 구문:

SELECT b1 = ANY((SELECT b2 FROM t2 ...)) FROM t1 ...;

여기모두고려될 수 있습니다 둘 다 하위 쿼리로 이어지거나 다음과 같은 경우 집계로 사용됩니다. select 표현식은 1개의 행을 반환합니다. 따라서 표준 이름은 이러한 집계에는 제공될 수 없습니다.

참고:다른 SQL 작업에 익숙한 사용자 데이터베이스 관리 시스템은 다음과 같은 사실에 놀랄 수도 있습니다. 특정 토토 사이트 함수의 성능 특성PostgreSQL때 토토 사이트는 전체 테이블에 적용됩니다(즉, no어디절이 지정되었습니다). 에서 특히, 다음과 같은 쿼리는

몇 테이블에서 최소(열) 선택;

다음에 의해 실행됩니다PostgreSQL순차 스캔 사용 테이블 전체. 다른 데이터베이스 시스템은 쿼리를 최적화할 수 있습니다. 열의 인덱스를 사용하려면 이 형식을 사용하세요. 가능합니다. 마찬가지로 토토 사이트 함수최대()그리고수()다음의 경우 항상 순차 스캔이 필요합니다. 전체 테이블에 적용됨PostgreSQL.

PostgreSQL쉽게는 할 수 없습니다 이 최적화를 구현하는 이유는 다음과 같습니다. 사용자 정의 집계 쿼리. 이후분(), 최대(), 그리고수()는 다음을 사용하여 정의됩니다. 토토 사이트 함수를 위한 일반 API, 조항이 없습니다. 이러한 기능을 특수하게 실행하기 위해 특정 상황.

다행히도 다음 문제에 대한 간단한 해결 방법이 있습니다.분()그리고최대(). 아래 표시된 쿼리는 동일합니다. 위의 쿼리에 적용됩니다. 단, 해당 열에 B-트리 인덱스가 있는 경우 질문.

테이블에서 열 선택 ORDER BY 열 ASC LIMIT 1;

유사한 쿼리(대체하여 얻음)설명forASC에 위의 쿼리)는 대신 사용할 수 있습니다.최대().

안타깝게도 이와 유사하게 사소한 쿼리는 없습니다. 성능을 향상시키는 데 사용될 수 있습니다.수()전체에 적용할 경우 테이블.