Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1
Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong kèo chấp bóng đá hôm nay phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

kèo chấp bóng đá hôm nay10.2. Người vận hành

kèo chấp bóng đá hôm nay tử cụ thể được tham chiếu bởi biểu thức kèo chấp bóng đá hôm nay tử được xác định bằng cách sử dụng quy trình sau. Lưu ý rằng thủ tục này bị ảnh hưởng gián tiếp bởi sự ưu tiên của các kèo chấp bóng đá hôm nay tử liên quan, vì điều đó sẽ xác định biểu hiện phụ nào được coi là đầu vào của các kèo chấp bóng đá hôm nay tử. Nhìn thấyPhần 4.1.6Để biết thêm thông tin.

Độ phân giải loại kèo chấp bóng đá hôm nay tử

  1. Chọn các kèo chấp bóng đá hôm nay tử được xem xét từpg_operatorDanh mục hệ thống. Nếu tên kèo chấp bóng đá hôm nay tử không có trình độ học sinh đã được sử dụng (trường hợp thông thường), các kèo chấp bóng đá hôm nay tử được xem xét là những người có tên và số đối số phù hợp có thể nhìn thấy trong đường dẫn tìm kiếm hiện tại (xemPhần 5.7.3). Nếu một tên kèo chấp bóng đá hôm nay tử đủ điều kiện được đưa ra, chỉ xem xét các kèo chấp bóng đá hôm nay tử trong lược đồ được chỉ định.

    1. Nếu đường dẫn tìm kiếm tìm thấy nhiều kèo chấp bóng đá hôm nay tử với các loại đối số giống hệt nhau, chỉ có loại xuất hiện sớm nhất trong đường dẫn được xem xét. Các kèo chấp bóng đá hôm nay tử với các loại đối số khác nhau được xem xét trên một chân bình đẳng bất kể vị trí đường dẫn tìm kiếm.

  2. Kiểm tra nhà điều hành chấp nhận chính xác các loại đối số đầu vào. Nếu một người tồn tại (chỉ có thể có một trận đấu chính xác trong tập hợp các kèo chấp bóng đá hôm nay tử được xem xét), hãy sử dụng nó. Thiếu một trận đấu chính xác tạo ra mối nguy hiểm bảo mật khi gọi, thông qua tên đủ điều kiện[1](không phải điển hình), bất kỳ kèo chấp bóng đá hôm nay tử nào được tìm thấy trong một lược đồ cho phép người dùng không tin tưởng tạo đối tượng. Trong các tình huống như vậy, các đối số diễn viên để buộc một trận đấu chính xác.

    1. Nếu một đối số của một người vận hành nhị phân là củakhông xác địnhkèo chấp bóng đá hôm nay, sau đó giả sử nó giống như kèo chấp bóng đá hôm nay đối số khác cho kiểm tra này. Những lời mời liên quan đến haikhông xác địnhĐầu vào hoặc kèo chấp bóng đá hôm nay tử Unary cókhông xác địnhĐầu vào, sẽ không bao giờ tìm thấy một trận đấu ở bước này.

    2. Nếu một đối số của một người vận hành nhị phân là củakhông xác địnhLoại và loại còn lại thuộc loại miền, kiểm tra tiếp theo để xem có kèo chấp bóng đá hôm nay tử chấp nhận chính xác loại cơ sở của miền ở cả hai bên không; Nếu vậy, hãy sử dụng nó.

  3. Tìm kiếm trận đấu tốt nhất.

    1. loại bỏ các kèo chấp bóng đá hôm nay tử ứng viên mà các loại đầu vào không khớp và không thể được chuyển đổi (sử dụng chuyển đổi ẩn) để khớp.không xác địnhnghĩa đen được coi là có thể chuyển đổi thành bất cứ điều gì cho mục đích này. Nếu chỉ còn một ứng cử viên, hãy sử dụng nó; khác tiếp tục bước tiếp theo.

    2. Nếu bất kỳ đối số đầu vào nào thuộc kèo chấp bóng đá hôm nay miền, hãy coi nó là kèo chấp bóng đá hôm nay cơ sở của miền cho tất cả các bước tiếp theo. Điều này đảm bảo rằng các miền hoạt động giống như các kèo chấp bóng đá hôm nay cơ sở của chúng cho mục đích phân giải điều hành mơ hồ.

    3. Chạy qua tất cả các ứng cử viên và giữ những người có những trận đấu chính xác nhất trên các kèo chấp bóng đá hôm nay đầu vào. Giữ tất cả các ứng cử viên nếu không có trận đấu chính xác. Nếu chỉ còn một ứng cử viên, hãy sử dụng nó; khác tiếp tục bước tiếp theo.

    4. Chạy qua tất cả các ứng cử viên và giữ những người chấp nhận các kèo chấp bóng đá hôm nay ưa thích (thuộc kèo chấp bóng đá hôm nay kèo chấp bóng đá hôm nay dữ liệu đầu vào) ở hầu hết các vị trí mà sẽ cần chuyển đổi kèo chấp bóng đá hôm nay. Giữ tất cả các ứng cử viên nếu không chấp nhận các kèo chấp bóng đá hôm nay ưa thích. Nếu chỉ còn một ứng cử viên, hãy sử dụng nó; khác tiếp tục bước tiếp theo.

    5. Nếu có bất kỳ đối số đầu vào nào làkhông xác định, Kiểm tra các kèo chấp bóng đá hôm nay kèo chấp bóng đá hôm nay được chấp nhận tại các vị trí đối số đó bởi các ứng cử viên còn lại. Ở mỗi vị trí, chọnchuỗi14632_15285

    6. Nếu có cả haikhông xác địnhvà các đối số kiểu đã biết, và tất cả các đối số kiểu đã biết có cùng kèo chấp bóng đá hôm nay, giả sử rằngkhông xác địnhĐối số cũng thuộc kèo chấp bóng đá hôm nay đó và kiểm tra ứng viên nào có thể chấp nhận kèo chấp bóng đá hôm nay đó tạikhông xác định15668_15758

Một số ví dụ theo sau.

Ví dụ 10-1. Độ phân giải kiểu vận hành giai thừa

Chỉ có một kèo chấp bóng đá hôm nay tử giai thừa (Postfix!) được xác định trong danh mục tiêu chuẩn và nó có một đối số của kèo chấp bóng đá hôm nayBigint. Máy quét gán một kèo chấp bóng đá hôm nay ban đầuSố nguyênĐối với đối số trong biểu thức truy vấn này:

Chọn 40! Như "40 giai thừa";

                   40 thế hệ
----------------------------------------------------------
 815915283247897734345611269596115894272000000000
(1 hàng)

Vì vậy, trình phân tích cú pháp thực hiện chuyển đổi loại trên kèo chấp bóng đá hôm nay hạng và truy vấn tương đương với:

Chọn diễn viên (40 là Bigint)! Như "40 Factorial";

Ví dụ 10-2. Chuỗi phân giải loại kèo chấp bóng đá hôm nay tử nối

16736_16917

Một ví dụ với một đối số không xác định:

Chọn văn bản 'ABC' || 'def' là "văn bản và không xác định";

 văn bản và không xác định
------------------
 ABCDEF
(1 hàng)

Trong trường hợp này, trình phân tích cú pháp có vẻ xem có người vận hành đang sử dụngTextcho cả hai đối số. Vì có, nó giả định rằng đối số thứ hai nên được hiểu là kèo chấp bóng đá hôm nayText.

Đây là sự kết hợp của hai giá trị của các kèo chấp bóng đá hôm nay không xác định:

Chọn 'ABC' || 'def' là "không xác định";

 không xác định
-------------
 ABCDEF
(1 hàng)

Trong trường hợp này không có gợi ý ban đầu cho loại nào sẽ sử dụng, vì không có loại nào được chỉ định trong truy vấn. Vì vậy, trình phân tích cú pháp tìm kiếm tất cả các kèo chấp bóng đá hôm nay tử ứng cử viên và thấy rằng có các ứng cử viên chấp nhận cả đầu vào loại chuỗi và chuỗi bit. Vì danh mục chuỗi được ưu tiên khi có sẵn, danh mục đó được chọn, và sau đó loại ưa thích cho chuỗi,Text, được sử dụng làm kèo chấp bóng đá hôm nay cụ thể để giải quyết các chữ không xác định như.

Ví dụ 10-3. Độ phân giải loại kèo chấp bóng đá hôm nay tử giá trị và phủ định tuyệt đối

ThePostgreSQLDanh mục kèo chấp bóng đá hôm nay tử có một số mục cho kèo chấp bóng đá hôm nay tử tiền tố@, tất cả đều thực hiện các hoạt động giá trị tuyệt đối cho các kèo chấp bóng đá hôm nay dữ liệu số khác nhau. Một trong những mục này là dành cho kèo chấp bóng đá hôm nayfloat8, là kèo chấp bóng đá hôm nay ưa thích trong danh mục số. Vì thế,PostgreSQLSẽ sử dụng mục nhập đó khi phải đối mặt vớikhông xác địnhĐầu vào:

Chọn @ '-4.5' là "abs";
 abs
-----
 4.5
(1 hàng)

Ở đây hệ thống đã ngầm giải quyết theo nghĩa đen chưa biết là kèo chấp bóng đá hôm nayfloat8Trước khi áp dụng kèo chấp bóng đá hôm nay tử đã chọn. Chúng ta có thể xác minh rằngfloat8và không phải một số kèo chấp bóng đá hôm nay khác đã được sử dụng:

Chọn @ '-4.5e500' dưới dạng "abs";

Lỗi: "-4.5E500" nằm ngoài phạm vi cho kèo chấp bóng đá hôm nay chính xác gấp đôi

Mặt khác, kèo chấp bóng đá hôm nay tử tiền tố~19093_19163float8. Vì vậy, nếu chúng ta thử một trường hợp tương tự với~, chúng ta nhận được:

Chọn ~ '20' làm "phủ định";

Lỗi: kèo chấp bóng đá hôm nay tử không phải là duy nhất: ~ "không xác định"
Gợi ý: Không thể chọn một nhà điều hành ứng viên tốt nhất. Bạn có thể cần thêm
loại diễn viên rõ ràng.

Điều này xảy ra vì hệ thống không thể quyết định trong số một số có thể19558_19561Người vận hành nên được ưu tiên. Chúng tôi có thể giúp nó với một diễn viên rõ ràng:

Chọn ~ cast ('20 'là int8) là "phủ định";

 phủ định
----------
      -21
(1 hàng)

Ví dụ 10-4. Độ phân giải Loại kèo chấp bóng đá hôm nay tử bao gồm mảng

Đây là một ví dụ khác về việc giải quyết một kèo chấp bóng đá hôm nay tử với một đầu vào đã biết và một đầu vào không xác định:

chọn mảng [1,2] <@ '1,2,3' là "là tập hợp con";

 là tập hợp con
-----------
 t
(1 hàng)

ThePostgreSQLDanh mục kèo chấp bóng đá hôm nay tử có một số mục cho kèo chấp bóng đá hôm nay tử infix<@, nhưng hai người duy nhất có thể chấp nhận một mảng số nguyên ở phía bên trái là bao gồm mảng (AnyArray <@ AnyArray) và bao gồm phạm vi (AnyEuity <@ Anyrange). Vì không có kèo chấp bóng đá hôm nay giả thuyết đa hình này (xemPhần 8.20) được coi là ưa thích, trình phân tích cú pháp không thể giải quyết sự mơ hồ trên cơ sở đó. Tuy nhiên,Bước 3.FNói với nó giả sử rằng chữ không xác định có cùng loại với đầu vào khác, nghĩa là mảng số nguyên. Bây giờ chỉ có một trong hai kèo chấp bóng đá hôm nay tử có thể khớp, vì vậy bao gồm mảng được chọn. .

Ví dụ 10-5. kèo chấp bóng đá hôm nay tử tùy chỉnh trên một loại miền

21267_21534

Tạo tên miền mytext dưới dạng kiểm tra văn bản (...);
Tạo hàm mytext_eq_text (mytext, văn bản) trả về boolean là ...;
Tạo kèo chấp bóng đá hôm nay tử = (thủ tục = mytext_eq_text, leftarg = mytext, relinesarg = text);
Tạo bảng mytable (val mytext);

Chọn * từ mytable trong đó val = 'foo';

21831_21918mytext = mytextkèo chấp bóng đá hôm nay tử (Bước 2.a), mà không có; Sau đó, nó sẽ xem xét kèo chấp bóng đá hôm nay cơ sở của miềnText, và xem cóText = Textkèo chấp bóng đá hôm nay tử (Bước 2.B), có; Vì vậy, nó giải quyếtkhông xác định-Type theo nghĩa đen asTextvà sử dụngText = Textkèo chấp bóng đá hôm nay tử. Cách duy nhất để sử dụng kèo chấp bóng đá hôm nay tử tùy chỉnh là sử dụng rõ ràng theo nghĩa đen:

Chọn * Từ MyTable WHERE Val = Text 'Foo';

sao chomytext = Text22821_23285

ghi chú

[1]

23635_23793mẫu sử dụng lược đồ an toàn.