이 문서는 지원되지 않는 버전의 PostgreSQL 용입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 10 장 10 장 윈 토토버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

5 장. 스포츠 토토 결과 변환

SQL쿼리는 의도적으로 또는 동일하게 다른 데이터 스포츠 토토 결과의 혼합이 필요하지 않습니다. 표현.Postgres혼합 스포츠 토토 결과 표현을 평가하기위한 광범위한 시설.

많은 경우 사용자가 세부 사항을 이해할 필요가 없습니다. 스포츠 토토 결과 변환 메커니즘의. 그러나 암시 적 에 의해 수행 된 전환Postgrescan 쿼리 결과에 영향을 미칩니다. 필요한 경우 이러한 결과는 가능합니다 사용을 사용하여 사용자 또는 프로그래머가 조정하십시오.명시 적강제 스포츠 토토 결과.

이 장은를 소개합니다.Postgres변환 메커니즘을 입력하십시오 규칙. 사용자 안내서의 관련 섹션을 참조하십시오 특정 데이터에 대한 자세한 내용은 프로그래머 안내서 유형 및 허용 기능 및 연산자.

프로그래머 안내서에는 정확한에 대한 자세한 내용이 있습니다 암시 적 스포츠 토토 결과 변환 및 강요에 사용되는 알고리즘.

5.1. 개요

SQL는 강력하게 입력되었습니다 언어. 즉, 모든 데이터 항목에는 관련 데이터 스포츠 토토 결과이 있습니다. 동작을 결정하고 허용 사용.Postgres확장 가능한 스포츠 토토 결과 시스템이 있습니다 그것은 다른 것보다 훨씬 더 일반적이고 유연합니다RDBMS구현. 따라서 대부분의 스포츠 토토 결과 의 변환 행동Postgres장군이 통제해야합니다 혼합 스포츠 토토 결과을 허용하는 임시 휴리스틱보다는 규칙 사용자 정의 스포츠 토토 결과에서도 의미가있는 표현.

thePostgres스캐너/파서 어휘 요소를 다섯 가지 기본 범주로 해독합니다. 정수, 부유물, 문자열, 이름 및 키워드. 대부분의 확장 스포츠 토토 결과은 먼저 문자열로 토큰 화됩니다. 그만큼SQL언어 정의는 스포츠 토토 결과을 지정할 수 있습니다 문자열이있는 이름 과이 메커니즘은에서 사용할 수 있습니다.Postgres파서를 시작하려면 올바른 길을 따라 내려갑니다. 예를 들어, 쿼리

tgl = "airt ', point (0,0)' '텍스트'원점 '을"value "로 선택합니다.
 라벨 | 값
--------+-------
 원산지 | (0,0)
(1 행)
스포츠 토토 결과의 두 줄이 있습니다텍스트and포인트. 유형이 a에 지정되지 않은 경우 문자열, 그런 다음 자리 표시 자형알 수없는초기에 할당되어 설명대로 이후 단계에서 해결됩니다. 아래에.

4 가지 기본 사항이 있습니다SQL|Postgres파서 :

운영자

Postgres허용 왼쪽 및 오른쪽에있는 표현 (하나의 인수) 연산자 및 바이너리 (두 인수) 연산자.

함수 호출

많은 것들Postgres타입 시스템은 풍부한 기능 세트 주위에 구축되었습니다. 함수 호출에는 하나 이상의 인수가 있습니다. 특정 쿼리는 함수와 일치해야합니다 시스템 카탈로그에서 사용할 수 있습니다. 부터Postgres기능을 허용합니다 과부하, 함수 이름만으로는 독특하지 않습니다 호출 할 기능을 식별합니다 --- 파서는 데이터 유형을 기반으로 올바른 기능을 선택하십시오. 공급 된 논쟁.

쿼리 대상

SQL삽입 및 업데이트 진술은 표현의 결과를 표에 배치합니다. 쿼리의 표현식은 아마도 대상의 스포츠 토토 결과으로 변환 될 수 있습니다 열.

연합 및 사례 구성

모든 선택은 Union Select 문에서 결과를 얻었으므로 단일 열 세트, 스포츠 토토 결과에 표시해야합니다. 각 선택 절의 결과는 일치하고 균일 한 세트로 변환되었습니다. 마찬가지로 결과 사례 구조의 표현은 사례 표현이 전체적으로 알려진 출력 스포츠 토토 결과.

많은 일반 스포츠 토토 결과 변환 규칙은 간단합니다 에 구축 된 컨벤션Postgres기능 및 운영자 테이블. 전환에는 일부 휴리스틱이 포함되어 있습니다 에 대한 컨벤션을 더 잘 지원하는 규칙SQL92표준 기본 스포츠 토토 결과smallint, Integerfloat.

thePostgres파서 사용 모든 유형 변환 기능이 단일을 취하는 협약 소스 유형의 인수는 대상 유형. 이러한 기준을 충족하는 모든 기능은 다음과 같습니다 유효한 전환 기능으로 간주되고 사용될 수 있습니다. 파서에 의해. 이 간단한 가정은 파서에게 제공합니다 유형 변환 가능성을 탐색 할 수있는 힘 확장 된 사용자 정의 유형을 사용할 수 있도록 하드 코딩 같은 특징은 투명하게.

추가 휴리스틱은 파서에 제공됩니다. 적절한 행동에 대한 더 나은 추측SQL표준 스포츠 토토 결과. 몇 가지 기본이 있습니다스포츠 토토 결과 카테고리정의 : 부울, 숫자, 문자열, 비트 스트링, DateTime, TimesPan, 기하학적, 기하학적, 네트워크 및 사용자 정의. 각 카테고리는 제외합니다 사용자 정의,선호 스포츠 토토 결과모호성이있을 때 우선적으로 선택됩니다. ~ 안에 사용자 정의 범주, 각 유형은 자체 선호 스포츠 토토 결과입니다. 모호한 표현 (여러 후보자 구문 분석 솔루션)은 여러 가지가있을 때 종종 해결할 수 있습니다 가능한 내장 유형이지만 사용자 정의 유형에 대한 여러 가지 선택이 있습니다.

5.1.1. 가이드 라인

모든 스포츠 토토 결과 변환 규칙은 여러 가지로 설계되었습니다 염두에 두는 원칙 :

  • 암시 적 변환은 결코 놀라운 일을해서는 안됩니다 예측할 수없는 결과.

  • 사용자 정의 스포츠 토토 결과, 그 중 파서에 없음 a-priori 지식은 스포츠 토토 결과에서 "더 높아야한다" 계층. 혼합형 표현식에서는 기본 스포츠 토토 결과이 있어야합니다 항상 사용자 정의 스포츠 토토 결과으로 변환됩니다 (물론, 전환이 필요한 경우에만).

  • 사용자 정의 유형은 관련이 없습니다. 현재,Postgres관계에 대한 정보 내장 유형에 대한 하드 코드 휴리스틱 이외의 유형 사용 가능한 기능에 기초한 암시 적 관계 카탈로그에서.

  • 파서에서 여분의 오버 헤드가 없어야합니다. 쿼리에 암시 적 유형이 필요하지 않은 경우 집행자 변환. 즉, 쿼리가 잘 공식화 된 경우 유형이 이미 일치하고 쿼리가 진행됩니다. 파서에서 여분의 시간을 보내지 않고 불필요한 암시 적 변환 기능을 소개합니다 쿼리로.

    또한 쿼리에 일반적으로 암시 적 요구가 필요한 경우 함수에 대한 변환, 그렇다면 사용자가 정의합니다. 올바른 인수 유형이있는 명시 적 기능 Parser는이 새로운 기능을 사용해야하며 더 이상 이전 기능을 사용한 암시 적 변환.