Phiên bản được hỗ trợ:hiện tại(17)16 / 15 / 14 / 13
Phiên bản phát triển: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
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 các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

9.23. So tỷ lệ kèo bóng đá 88

Phần này mô tả một số cấu trúc chuyên dụng để thực hiện nhiều so tỷ lệ kèo bóng đá 88 giữa các nhóm giá trị. Các hình thức này có liên quan về mặt cú pháp đến các hình thức truy vấn con của phần trước, nhưng không liên quan đến các nhóm phụ.PostgreSQLPhần mở rộng; phần còn lại làSQL-Compliant. Tất cả các biểu mẫu biểu thức được ghi lại trong phần này trả về kết quả boolean (true/false).

9.23.1.in

Biểu thứcin (giá trị[, ...])

Phía bên phải là danh sách các biểu thức. Kết quả làTRUEHồiNếu kết quả biểu thức bên trái bằng với bất kỳ biểu thức bên phải nào. Đây là một ký hiệu tốc ký cho

expression=Value1hoặcBiểu thức=value2hoặc

13751_13917inXây dựng sẽ là NULL, không sai. Điều này phù hợp với các quy tắc bình thường của SQL cho các kết hợp boolean của các giá trị null.

9.23.2.không ở

Biểu thứckhông trong (giá trị[, ...])

Phía bên phải là danh sách các biểu thức. Kết quả làTRUEKhănNếu kết quả biểu thức bên trái là không đồng đều với tất cả các biểu thức bên phải. Đây là một ký hiệu tốc ký cho

Biểu thức<Value1Biểu thức<value2

Lưu ý rằng nếu biểu thức bên trái mang lại NULL hoặc nếu không có giá trị tay phải ngang nhau và ít nhất một biểu thức bên phải mang lại NULL, kết quả củakhông ởXây dựng sẽ là NULL, không đúng như người ta có thể mong đợi. Điều này phù hợp với các quy tắc bình thường của SQL cho các kết hợp boolean của các giá trị null.

TIP

x không ở y​​là tương đương vớikhông (x in y)Trong mọi trường hợp. Tuy nhiên, các giá trị null có nhiều khả năng vượt qua người mới khi làm việc vớikhông ởhơn khi làm việc vớiin. Tốt nhất là thể hiện tình trạng của bạn một cách tích cực nếu có thể.

9.23.3.any/một số(tỷ lệ kèo bóng đá 88)

Biểu thức Nhà điều hànhany (Biểu thức tỷ lệ kèo bóng đá 88)Biểu thức Nhà điều hànhmột số (Biểu thức tỷ lệ kèo bóng đá 88)

Phía bên phải là biểu thức dấu ngoặc đơn, phải mang lại giá trị mảng. Biểu thức bên trái được đánh giá và so tỷ lệ kèo bóng đá 88 với từng phần tử của mảng bằng cách sử dụng đã choNhà điều hành, phải mang lại kết quả boolean. Kết quả củaAnyTRUEHồiNếu có được kết quả đúng. Kết quả làSaiNếu không tìm thấy kết quả đúng (bao gồm cả trường hợp tỷ lệ kèo bóng đá 88 có phần tử không).

Nếu biểu thức tỷ lệ kèo bóng đá 88 mang lại một tỷ lệ kèo bóng đá 88 null, kết quả củabất kỳsẽ là null. Nếu biểu thức bên trái mang lại NULL, kết quả củabất kỳthường là NULL (mặc dù một toán tử so tỷ lệ kèo bóng đá 88 không nghiêm ngặt có thể mang lại kết quả khác). Ngoài ra, nếu mảng bên phải chứa bất kỳ phần tử null nào và không có kết quả so tỷ lệ kèo bóng đá 88 đúng nào, kết quả củaAnysẽ là null, không sai (một lần nữa, giả sử một toán tử so tỷ lệ kèo bóng đá 88 nghiêm ngặt). Điều này phù hợp với các quy tắc bình thường của SQL cho các kết hợp boolean của các giá trị null.

Một sốlà từ đồng nghĩa vớiAny.

9.23.4.tất cả(tỷ lệ kèo bóng đá 88)

Biểu thức Nhà điều hànhAll (Biểu thức tỷ lệ kèo bóng đá 88)

Phía bên phải là biểu thức dấu ngoặc đơn, phải mang lại giá trị mảng. Biểu thức bên trái được đánh giá và so tỷ lệ kèo bóng đá 88 với từng phần tử của mảng bằng cách sử dụng đã choNhà điều hành, phải mang lại kết quả boolean. Kết quả củatất cảĐúngHồiNếu tất cả các so tỷ lệ kèo bóng đá 88 đều có đúng (bao gồm cả trường hợp mảng có các phần tử bằng không). Kết quả làSaiNếu có bất kỳ kết quả sai nào được tìm thấy.

Nếu biểu thức tỷ lệ kèo bóng đá 88 mang lại một tỷ lệ kèo bóng đá 88 null, kết quả củatất cảsẽ là NULL. Nếu biểu thức bên trái mang lại NULL, kết quả củatất cảthường là NULL (mặc dù một toán tử so tỷ lệ kèo bóng đá 88 không nghiêm ngặt có thể mang lại kết quả khác). Ngoài ra, nếu mảng bên phải chứa bất kỳ phần tử null nào và không có kết quả so tỷ lệ kèo bóng đá 88 sai, kết quả củatất cảsẽ là null, không đúng (một lần nữa, giả sử một toán tử so tỷ lệ kèo bóng đá 88 nghiêm ngặt). Điều này phù hợp với các quy tắc bình thường của SQL cho các kết hợp boolean của các giá trị null.

9.23.5. So tỷ lệ kèo bóng đá 88 hàm tạo hàng

Row_Constructor Nhà điều hành Row_Constructor

Mỗi bên là một hàm tạo tỷ lệ kèo bóng đá 88, như được mô tả trongPhần 4.2.13. Hai bộ xây dựng tỷ lệ kèo bóng đá 88 phải có cùng một số trường.Nhà điều hànhđược áp dụng cho từng cặp trường tương ứng. .=Thành viên của lớp toán tử B-cây, có nghĩa là so tỷ lệ kèo bóng đá 88 trình xây dựng hàng chỉ có thể khiNhà điều hành=, <, <, <=, hoặc =hoặc có ngữ nghĩa tương tự như một trong số này.

The=<Các trường hợp hoạt động hơi khác so với các trường hợp khác. Hai tỷ lệ kèo bóng đá 88 được coi là bằng nhau nếu tất cả các thành viên tương ứng của họ không có null và bằng nhau;

cho<, <=, =Các trường hợp, các phần tử hàng được so sánh từ trái sang phải, dừng ngay khi tìm thấy một cặp phần tử không đồng đều hoặc null. Nếu một trong hai cặp phần tử này là NULL, kết quả của việc so tỷ lệ kèo bóng đá 88 vẫn chưa được biết (NULL);tỷ lệ kèo bóng đá 88 (1,2, null) <tỷ lệ kèo bóng đá 88 (1,3,0)mang lại sự thật, không phải null, vì cặp phần tử thứ ba không được xem xét.

Lưu ý

trướcPostgreSQL8.2, The<, <=, =Các trường hợp không được xử lý theo thông số kỹ thuật SQL. Một so tỷ lệ kèo bóng đá 88 nhưtỷ lệ kèo bóng đá 88 (a, b) <row (c, d)đã được triển khai làA <C và B <Dtrong khi hành vi chính xác tương đương vớiA <C hoặc (A = C và B <D).

ROW_Constructorkhác vớiROW_Constructor

Cấu trúc này tương tự như<So tỷ lệ kèo bóng đá 88, nhưng nó không mang lại null cho đầu vào null. Thay vào đó, bất kỳ giá trị null nào cũng được coi là không đồng đều với (khác biệt) bất kỳ giá trị không khống nào và bất kỳ hai null nào đều được coi là bằng nhau (không khác biệt).

Row_Constructorkhông khác biệt vớiRow_Constructor

Cấu trúc này tương tự như=So tỷ lệ kèo bóng đá 88, nhưng nó không mang lại null cho đầu vào null. Thay vào đó, bất kỳ giá trị null nào cũng được coi là không đồng đều với (khác biệt) bất kỳ giá trị không khống nào và bất kỳ hai null nào đều được coi là bằng nhau (không khác biệt).

9.23.6. So tỷ lệ kèo bóng đá 88 loại tổng hợp

Record Nhà điều hành Record

Thông số kỹ thuật SQL yêu cầu so tỷ lệ kèo bóng đá 88 theo hàng để trả về null nếu kết quả phụ thuộc vào việc so tỷ lệ kèo bóng đá 88 hai giá trị null hoặc null và không null.PostgreSQLĐiều này chỉ khi so tỷ lệ kèo bóng đá 88 kết quả của hai hàm tạo hàng (như trongPhần 9.23.5) hoặc so tỷ lệ kèo bóng đá 88 một hàm tạo hàng với đầu ra của trình truy vấn con (như trongPhần 9.22). Trong các bối cảnh khác trong đó hai giá trị loại tổng hợp được so tỷ lệ kèo bóng đá 88, hai giá trị trường null được coi là bằng nhau và null được coi là lớn hơn so với không null.

mỗi bên được đánh giá và chúng được so tỷ lệ kèo bóng đá 88 khôn ngoan. So sánh loại tổng hợp được cho phép khiNhà điều hành=, <, <, <=, hoặc =hoặc có ngữ nghĩa tương tự như một trong số này. .=Thành viên của lớp toán tử B-cây.) Hành vi mặc định của các toán tử trên giống như đối vớilà [không] khác biệt vớiĐối với các hàm tạo tỷ lệ kèo bóng đá 88 (xemPhần 9.23.5).

Để hỗ trợ khớp các hàng bao gồm các phần tử không có lớp toán tử B-cây mặc định, các toán tử sau được xác định để so tỷ lệ kèo bóng đá 88 loại tổng hợp:*=, *<, *<, *<=, ** =. Các toán tử này so tỷ lệ kèo bóng đá 88 biểu diễn nhị phân bên trong của hai hàng.