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
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ế.

kèo chấp bóng đá hôm nay10378_10406

Giống như hầu hết Các sản phẩm cơ sở dữ liệu quan hệ khác,PostgreSQLHỗ trợ các hàm tổng kèo chấp bóng đá hôm nay. MỘT Hàm tổng kèo chấp bóng đá hôm nay tính toán một kết quả duy nhất từ ​​nhiều đầu vào hàng. Ví dụ: có các tập kèo chấp bóng đá hôm nay để tính toánĐếm, Sum, AVG(trung bình),Max(tối đa) vàmin(tối thiểu) trên một tập kèo chấp bóng đá hôm nay hàng.

Ví dụ, chúng ta có thể tìm thấy cách đọc nhiệt độ thấp nhất Bất cứ nơi nào với

chọn tối đa (temp_lo) từ thời tiết;
Max
-----
  46
(1 hàng)

Nếu chúng ta muốn biết những gì kèo chấp bóng đá hôm nay phố (hoặc kèo chấp bóng đá hôm nay phố) mà đọc xảy ra, chúng ta có thể thử

Chọn kèo chấp bóng đá hôm nay phố từ thời tiết nơi temp_lo = max (temp_lo);sai

Nhưng điều này sẽ không hoạt động vì tổng kèo chấp bóng đá hôm nayMaxKhông thể được sử dụng trongWHEREmệnh đề. (Hạn chế này tồn tại vìWHEREmệnh đề xác định các hàng mà sẽ đi vào giai đoạn tổng kèo chấp bóng đá hôm nay; Vì vậy, nó phải được đánh giá trước khi các chức năng tổng kèo chấp bóng đá hôm nay được tính toán.) Tuy nhiên, như thường lệ trường kèo chấp bóng đá hôm nay truy vấn có thể được khôi phục để hoàn thành dự định kết quả, ở đây bằng cách sử dụngSBURERY:

Chọn kèo chấp bóng đá hôm nay phố từ thời tiết
    Trong đó temp_lo = (chọn tối đa (temp_lo) từ thời tiết);
kèo chấp bóng đá hôm nay phố
---------------
 San Francisco
(1 hàng)

Điều này là OK bởi vì trình điều khiển con là một tính toán độc lập điều đó tính toán tổng kèo chấp bóng đá hôm nay của chính nó một cách riêng biệt với những gì đang xảy ra Trong truy vấn bên ngoài.

Tập kèo chấp bóng đá hôm nay cũng rất hữu ích khi kết kèo chấp bóng đá hôm nay vớiNhóm bởimệnh đề. Ví dụ, chúng ta có thể Nhận nhiệt độ thấp tối đa quan sát được ở mỗi kèo chấp bóng đá hôm nay phố với

Chọn kèo chấp bóng đá hôm nay phố, Max (Temp_LO)
    Từ thời tiết
    Theo nhóm theo kèo chấp bóng đá hôm nay phố;
kèo chấp bóng đá hôm nay phố | Tối đa
---------------+-----
 Hayward |  37
 San Francisco |  46
(2 hàng)

cung cấp cho chúng tôi một hàng đầu ra cho mỗi thành phố. Mỗi kết quả tổng kèo chấp bóng đá hôm nay được tính toán trên các hàng bảng phù kèo chấp bóng đá hôm nay với thành phố đó. Chúng ta có thể lọc Các hàng được nhóm này bằng cách sử dụng:

Chọn kèo chấp bóng đá hôm nay phố, Max (Temp_Lo)
    Từ thời tiết
    Nhóm từng kèo chấp bóng đá hôm nay phố
    Có tối đa (temp_lo) <40;
kèo chấp bóng đá hôm nay phố | Tối đa
---------+-----
 Hayward |  37
(1 hàng)

cung cấp cho chúng ta kết quả tương tự chỉ cho các kèo chấp bóng đá hôm nay phố có tất cảTEMP_LOgiá trị dưới 40. Cuối cùng, nếu Chúng tôi chỉ quan tâm đến các kèo chấp bóng đá hôm nay phố có tên bắt đầu bằng"S", chúng ta có thể làm

Chọn kèo chấp bóng đá hôm nay phố, Max (Temp_lo)
    Từ thời tiết
    Nơi kèo chấp bóng đá hôm nay phố thích 's%'(1)Nhóm theo kèo chấp bóng đá hôm nay phố
    Có tối đa (temp_lo) <40;
(1)
Thenhưtoán tử không mẫu kết kèo chấp bóng đá hôm nay và được giải thích trongPostgreSQL 7.3.21 Hướng dẫn sử dụng.

Điều quan trọng là phải hiểu sự tương tác giữa tổng kèo chấp bóng đá hôm nay vàSQL'sWHEREmệnh đề. Sự khác biệt cơ bản giữaWHERECó phải thế này:WHEREChọn các hàng đầu vào trước khi các nhóm và tổng kèo chấp bóng đá hôm nay được tính toán (Do đó, nó kiểm soát các hàng đi vào tính toán tổng kèo chấp bóng đá hôm nay), trong khiChọn các hàng nhóm sau khi Các nhóm và tập kèo chấp bóng đá hôm nay được tính toán. Do đó,WHEREmệnh đề không được chứa các hàm tổng kèo chấp bóng đá hôm nay; Không có ý nghĩa gì khi cố gắng sử dụng một tổng kèo chấp bóng đá hôm nay để xác định cái nào Hàng sẽ là đầu vào cho các tập kèo chấp bóng đá hôm nay. Mặt khác,mệnh đề luôn chứa tổng kèo chấp bóng đá hôm nay chức năng. (Nói đúng ra, bạn được phép viết mộtmệnh đề không sử dụng tổng kèo chấp bóng đá hôm nay, nhưng nó lãng phí: điều kiện tương tự có thể được sử dụng hiệu quả hơn tạiWHEREGiai đoạn.)

Quan sát rằng chúng ta có thể áp dụng giới hạn tên kèo chấp bóng đá hôm nay phố trongWHERE, vì nó không cần tổng kèo chấp bóng đá hôm nay. Cái này hiệu quả hơn so với việc thêm hạn chế vào, bởi vì chúng tôi tránh làm nhóm và Tính toán tổng kèo chấp bóng đá hôm nay cho tất cả các hàng không thành côngWHEREKiểm tra.