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

44.1. Hàm tỷ lệ kèo bóng đá 88#

Các chức năng trong tỷ lệ kèo bóng đá 88 được khai báo thông qua tiêu chuẩnTạo chức năngCú pháp:

tạo chức năngfuncname(List arging-list)
  Trả vềReturn-Typenhư $$
  # tỷ lệ kèo bóng đá 88 chức năng cơ thể
$$ ngôn ngữ plpython3u;

Cơ thể của một hàm chỉ đơn giản là một tập lệnh tỷ lệ kèo bóng đá 88. Khi hàm được gọi, các đối số của nó được truyền dưới dạng các phần tử của danh sáchargs; Các đối số được đặt tên cũng được truyền dưới dạng các biến thông thường cho tập lệnh tỷ lệ kèo bóng đá 88. Việc sử dụng các đối số được đặt tên thường dễ đọc hơn. Kết quả được trả về từ mã tỷ lệ kèo bóng đá 88 theo cách thông thường, vớireturnhoặcnăng suất(Trong trường hợp câu lệnh kết quả). Nếu bạn không cung cấp giá trị trả về, tỷ lệ kèo bóng đá 88 trả về mặc địnhKhông. tỷ lệ kèo bóng đá 88dịch tỷ lệ kèo bóng đá 88'sKhôngvào giá trị null SQL. Trong một thủ tục, kết quả từ mã tỷ lệ kèo bóng đá 88 phải làKhông(thường đạt được bằng cách kết thúc thủ tục mà không córeturncâu lệnh hoặc bằng cách sử dụngreturnCâu không đối số); Nếu không, một lỗi sẽ được nêu ra.

11221_11303

Tạo chức năng pymax (A Integer, B Integer)
  Trả về số nguyên
Như $$
  Nếu a b:
    trả lại a
  trả lại b
$$ ngôn ngữ plpython3u;

Mã tỷ lệ kèo bóng đá 88 được đưa ra như là phần thân của định nghĩa hàm được chuyển thành hàm tỷ lệ kèo bóng đá 88. Ví dụ: các kết quả trên trong:

def __plpython_procedure_pymax_23456 ():
  Nếu a b:
    trả lại a
  trả lại b

Giả sử 23456 là OID được gán cho tỷ lệ kèo bóng đá 88 củaPostgreSQL.

Các đối số được đặt làm biến toàn cầu. Do các quy tắc phạm vi của tỷ lệ kèo bóng đá 88, điều này có hậu quả tinh tế là một biến đối số không thể được chỉ định lại bên trong hàm theo giá trị của một biểu thức liên quan đến chính tên biến, trừ khi biến được ghi lại là toàn cầu trong khối. Ví dụ: những điều sau sẽ không hoạt động:

Tạo chức năng pystrip (x văn bản)
  Trả về văn bản
Như $$
  x = x.strip () # lỗi
  trả lại x
$$ ngôn ngữ plpython3u;

Vì gán choxlàm choxMột biến cục bộ cho toàn bộ khối, và vì vậyxỞ phía bên phải tỷ lệ kèo bóng đá 88 bài tập đề cập đến biến cục bộ chưa được chỉ địnhx, không phải tham số chức năng tỷ lệ kèo bóng đá 88. Sử dụngtoàn cầuCâu lệnh, điều này có thể được thực hiện để làm việc:

Tạo chức năng pystrip (x văn bản)
  Trả về văn bản
Như $$
  Toàn cầu x
  x = x.strip () # ok ngay bây giờ
  trả lại x
$$ ngôn ngữ plpython3u;

Nhưng nên không dựa vào chi tiết triển khai này của tỷ lệ kèo bóng đá 88. Tốt hơn là coi các tham số chức năng là chỉ đọc.

Gửi hiệu chỉnh

14136_14362Mẫu nàyĐể báo cáo vấn đề tài liệu.