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

10 장. 토토 사이트 변환

SQL진술이 가능합니다. 의도적이든 아니든, 다른 데이터 토토 사이트의 혼합이 필요합니다. 같은 표현.PostgreSQL혼합 토토 사이트을 평가하기위한 광범위한 시설이 있습니다 표현.

많은 경우 사용자가 세부 사항을 이해할 필요가 없습니다. 토토 사이트 변환 메커니즘의. 그러나 암시 적 에 의해 수행 된 전환PostgreSQL쿼리 결과에 영향을 줄 수 있습니다. 필요한 경우이 결과 사용하여 조정할 수 있습니다Explicit토토 사이트 변환.

이 장은를 소개합니다.postgresql변환 메커니즘을 입력하십시오 규칙. 의 관련 섹션을 참조하십시오.8 장and제 9 장특정에 대한 자세한 내용 데이터 유형 및 허용 기능 및 연산자

10.1. 개요

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

thepostgresql스캐너/파서는 어휘 요소를 5 개로 나눕니다 기본 범주 : 정수, 비 인구 번호, 문자열, 식별자 및 키워드. 대부분의 비 숫자 토토 사이트의 상수 먼저 문자열로 분류됩니다. 그만큼SQL언어 정의는 지정할 수 있습니다 문자열이있는 토토 사이트 이름 과이 메커니즘은에서 사용할 수 있습니다.PostgreSQL파서를 시작하려면 올바른 길을 따라 내려갑니다. 예를 들어, 쿼리

텍스트 '원점'을 "레이블", 포인트 '(0,0)' 'value "로 선택합니다.

 라벨 | 값
--------+-------
 원산지 | (0,0)
(1 행)

토토 사이트의 2 개의 문자 상수가 있습니다텍스트and포인트. 유형이있는 경우 문자열 리터럴에 대해 지정되지 않은 다음 자리 표시 자 유형알 수없는처음에는 할당됩니다 아래에 설명 된대로 후기 단계에서 해결되었습니다.

4 가지 기본 사항이 있습니다SQL별도의 토토 사이트이 필요한 구성 의 전환 규칙PostgreSQL파서 :

함수 호출

많은 것들postgresql타입 시스템이 구축되었습니다 풍부한 기능 주위. 함수는 하나 또는 가질 수 있습니다 더 많은 논쟁. 부터PostgreSQL기능을 허용합니다 과부하, 함수 이름만으로는 독특하지 않습니다 호출 할 기능을 식별하십시오. 파서는해야합니다 데이터 유형을 기반으로 올바른 기능을 선택하십시오. 공급 된 논쟁.

운영자

PostgreSQL허용 접두사 및 포스트 픽스 단일 표현식 (한 번) 연산자 및 바이너리 (2 학습) 연산자. 함수와 마찬가지로 연산자는 과부하 할 수 있습니다 올바른 연산자를 선택하는 것과 동일한 문제가 있습니다.

가치 저장소

SQL 삽입and업데이트진술은 표현식 결과를 표에 배치합니다. 성명서의 표현은 일치해야합니다. 그리고 아마도 대상의 토토 사이트으로 변환 될 수 있습니다 열.

Union, CASE배열Constructs

모든 쿼리가 Unionized의 결과 이후select진술은 단일로 표시되어야합니다 열 세트, 각각의 결과 토토 사이트select절은 일치해야합니다 균일 한 세트로 변환되었습니다. 마찬가지로 결과 A의 표현CASE구성 가되도록 공통 토토 사이트으로 변환해야합니다.CASE전체적으로 표현이 알려져 있습니다 출력 토토 사이트. 도 마찬가지입니다.배열Constructs.

시스템 카탈로그는 어떤 정보를 저장합니다 전환,캐스트데이터 유형은 유효하며 해당 변환을 수행하는 방법입니다. 사용자가 추가 캐스트를 추가 할 수 있습니다.캐스트 만들기명령. (이것은 일반적으로 이루어집니다 새로운 데이터 유형 정의와 함께. 캐스트 세트 내장 유형 사이에 신중하게 제작되었으며 변경되지 않은 것이 가장 좋습니다.)

파서에 추가 휴리스틱이 제공됩니다. 적절한 행동에 대한 더 나은 추측SQL표준 토토 사이트. 몇 가지 기본이 있습니다토토 사이트 카테고리정의 :부울, 숫자, String, Bitstring, DateTime, Timespan, 기하학적, 네트워크, 사용자 정의. 각 카테고리는 제외합니다 사용자 정의, 하나 이상의선호 토토 사이트있을 때 우선적으로 선택됩니다 모호. 사용자 정의 범주에서 각 토토 사이트은 고유 한 것입니다 선호하는 토토 사이트. 모호한 표현 (다중 표현 따라서 후보 구문 분석 솔루션)는 종종 해결 될 수 있습니다 가능한 여러 내장 토토 사이트이있을 때 사용자 정의에 대한 여러 선택이있을 때 오류를 제기하십시오. 토토 사이트.

모든 토토 사이트 변환 규칙은 여러 가지로 설계되었습니다 염두에 두는 원칙 :

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

  • 사용자 정의 토토 사이트, 그 중 파서에 없음우선 순위지식이 있어야합니다"Higher"토토 사이트 계층에서. 혼합 토토 사이트 표현식에서는 기본 토토 사이트이 항상 있어야합니다 사용자 정의 토토 사이트으로 변환됩니다 (물론 전환이 필요합니다).

  • 사용자 정의 유형은 관련이 없습니다. 현재,PostgreSQL유형 간의 관계에 대한 정보, 내장 유형에 대한 하드 코드 휴리스틱 이외 사용 가능한 기능에 기반한 암시 적 관계 캐스트.

  • 파서에서 추가 오버 헤드가 없어야합니다. 쿼리에 암시 적 토토 사이트 변환이 필요하지 않은 경우 집행자. 즉, 쿼리가 잘 공식화되고 토토 사이트이 이미 일치하면 쿼리가없이 진행되어야합니다 파서에서 소개하지 않고 여분의 시간을 보냅니다 불필요한 암시 적 변환 호출이 쿼리로 호출됩니다.

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