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

9,18. kèo chấp bóng đá hôm nay#

Phần này mô tảSQL-Compliant có điều kèo chấp bóng đá hôm nay có sẵn trongPostgreSQL.

tip

Nếu nhu cầu của bạn vượt xa khả năng của các kèo chấp bóng đá hôm nay này, bạn có thể muốn xem xét việc viết một hàm phía máy chủ bằng ngôn ngữ lập trình biểu cảm hơn.

Lưu ý

mặc dùHOUNESCE, 12477_12487Ít nhất12530_12644Variadicđối số mảng.

9.18.1.case #

TheSQL case13052_13164

trường hợp khiđiều kèo chấp bóng đá hôm naysau đóresult[Khi ...]
     [khácresult]
KẾT THÚC

caseCác điều khoản có thể được sử dụng bất cứ nơi nào một biểu kèo chấp bóng đá hôm nay là hợp lệ. Mỗiđiều kèo chấp bóng đá hôm naylà một biểu kèo chấp bóng đá hôm nay trả về ABooleanKết quả. Nếu kết quả của điều kèo chấp bóng đá hôm nay là đúng, giá trị củacaseBiểu kèo chấp bóng đá hôm nay làresultĐiều đó theo điều kèo chấp bóng đá hôm nay và phần còn lại củacaseBiểu kèo chấp bóng đá hôm nay không được xử lý. Nếu kết quả của điều kiện không đúng, bất kỳ điều gì tiếp theokhiĐiều khoản được kiểm tra theo cách tương tự. Nếu khôngKhi điều kèo chấp bóng đá hôm naymang lại sự thật, giá trị củacaseBiểu kèo chấp bóng đá hôm nay làresultcủakhácmệnh đề. Nếukhácmệnh đề bị bỏ qua và không có điều kèo chấp bóng đá hôm nay nào là đúng, kết quả là null.

Một ví dụ:

Chọn * từ kiểm tra;

 Một
---
 1
 2
 3

Chọn A,
       Trường hợp khi a = 1 thì 'một'
            Khi a = 2 sau đó 'hai'
            Khác 'Khác'
       KẾT THÚC
    Từ thử nghiệm;

 A | trường hợp
---+-------
 1 | một
 2 | hai
 3 | khác

Các loại dữ liệu của tất cảKết quảBiểu kèo chấp bóng đá hôm nay phải được chuyển đổi thành một loại đầu ra duy nhất. Nhìn thấyPhần 10.5Để biết thêm chi tiết.

Có mộtđơn giảnMẫucaseBiểu kèo chấp bóng đá hôm nay là một biến thể của dạng chung ở trên:

caseBiểu kèo chấp bóng đá hôm nayKhigiá trịsau đóresult[Khi ...]
    [khácresult]
KẾT THÚC

Đầu tiênBiểu kèo chấp bóng đá hôm nayđược tính toán, sau đó so sánh với mỗigiá trịBiểu kèo chấp bóng đá hôm nay trongKhimệnh đề cho đến khi một được tìm thấy bằng nó. Nếu không tìm thấy trận đấu,resultcủakhácmệnh đề (hoặc giá trị null) được trả về. Điều này tương tự nhưSwitchTuyên bố trong C.

Ví dụ trên có thể được viết bằng cách sử dụng đơn giảncaseCú pháp:

Chọn A,
       Trường hợp a khi 1 sau đó 'một'
              Khi 2 sau đó 'hai'
              Khác 'Khác'
       KẾT THÚC
    Từ thử nghiệm;

 A | trường hợp
---+-------
 1 | một
 2 | hai
 3 | khác

AcaseBiểu kèo chấp bóng đá hôm nay không đánh giá bất kỳ biểu kèo chấp bóng đá hôm nay con nào không cần thiết để xác định kết quả. Ví dụ, đây là một cách có thể để tránh sự thất bại của từng bộ phận:

Chọn ... Trường hợp trường hợp khi x < 0 thì y/x 1.5 khác kết thúc sai;

Lưu ý

như được mô tả trongPhần 4.2.14caseĐánh giá chỉ là biểu hiện phụ cần thiếtHồikhông phải là sắt. Ví dụ: hằng số1/017212_17319caseARM sẽ không bao giờ được nhập vào thời gian chạy.

9.18.2.HOUNESCE #

HOUNESCE(giá trị[, ...])

TheHOUNESCEHàm trả về các đối số đầu tiên của nó không phải là null. NULL chỉ được trả lại nếu tất cả các đối số là null. Nó thường được sử dụng để thay thế một giá trị mặc định cho các giá trị null khi dữ liệu được truy xuất để hiển thị, ví dụ:

Chọn Hạt (Mô tả, Short_Descrip, '(Không)') ...

Điều này trả vềMô tảNếu nó không phải là NULL, nếu khôngShort_descripNếu nó không phải là NULL, nếu không(Không).

Tất cả các đối số phải được chuyển đổi thành kiểu dữ liệu chung, sẽ là loại kết quả (xemPhần 10.5để biết chi tiết).

như AcaseBiểu kèo chấp bóng đá hôm nay,HOUNESCEChỉ đánh giá các đối số cần thiết để xác định kết quả; Đó là, các đối số ở bên phải của đối số không null đầu tiên không được đánh giá. Chức năng tiêu chuẩn SQL này cung cấp các khả năng tương tựNVLIFNULL, được sử dụng trong một số hệ thống cơ sở dữ liệu khác.

9.18.3.nullif #

nullif(19798_19806, value2)

Thenullifhàm trả về giá trị null nếuValue1bằngValue2; nếu không thì nó trả vềValue1. Điều này có thể được sử dụng để thực hiện hoạt động nghịch đảo củaHOUNESCEVí dụ đã cho ở trên:

chọn nullif (value, '(none)') ...

Trong ví dụ này, nếugiá trị(Không), null được trả về, nếu không thì giá trị củagiá trịđược trả về.

Hai đối số phải có các loại tương đương. Cụ thể, chúng được so sánh chính xác như thể bạn đã viếtValue1=value2, vì vậy phải có một phù hợp=Nhà điều hành có sẵn.

20862_21005=Nhà điều hành và trong một số trường hợp sẽ được quảng bá để phù hợp với loại đối số thứ hai. Ví dụ,nullif (1, 2.2)sản lượngSố, vì không cóSố nguyên = Số21345_21363Số = Số.

9.18.4.vĩ đại nhấtÍt nhất #

vĩ đại nhất(giá trị[, ...])
Ít nhất(giá trị[, ...])

Thevĩ đại nhấtÍt nhấtHàm chọn giá trị lớn nhất hoặc nhỏ nhất từ ​​danh sách bất kỳ số biểu kèo chấp bóng đá hôm nay nào. Tất cả các biểu kèo chấp bóng đá hôm nay phải được chuyển đổi thành một loại dữ liệu chung, sẽ là loại kết quả (xemPhần 10.5để biết chi tiết).

Giá trị null trong danh sách đối số bị bỏ qua. Kết quả sẽ chỉ là null nếu tất cả các biểu kèo chấp bóng đá hôm nay đánh giá là null. (Đây là độ lệch so với tiêu chuẩn SQL. Theo tiêu chuẩn, giá trị trả về là vô hiệu

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.