kèo bóng đá pháp - kèo bóng đá pháp hàng của bảng
[với [đệ quy]with_query
[, ...]]Table_Name
[ *] [[As]bí danh
]Cột_name
=Biểu thức
| Mặc định |Cột_name
[, ...]) = [kèo bóng đá pháp] (Biểu thức
| Mặc định [, ...]) |Cột_name
[, ...]) = (Sub-Select
)from_item
[, ...]]điều kiện
| Nơi hiện tại củacon trỏ_name
]output_expression
[[As]output_name
] [, ...]]
kèo bóng đá pháp
Thay đổi các giá trị của các cột được chỉ định trong tất cả các hàng thỏa mãn điều kiện. Chỉ các cột được sửa đổi cần được đề kèo bóng đá pháp trongset
mệnh đề; kèo bóng đá pháp cột không được sửa đổi rõ ràng giữ lại kèo bóng đá pháp giá trị trước đó của chúng.
Có hai cách để sửa đổi bảng bằng cách sử dụng thông tin có trong kèo bóng đá pháp bảng khác trong cơ sở dữ liệu: Sử dụng kèo bóng đá pháp lựa chọn phụ hoặc chỉ định kèo bóng đá pháp bảng bổ sung trongtừ
mệnh đề. Kỹ thuật nào phù hợp hơn phụ thuộc vào hoàn cảnh cụ thể.
Tùy chọnTrở về
mệnh đề gây kèo bóng đá phápkèo bóng đá pháp
Để tính toán và trả về (các) giá trị dựa trên mỗi hàng thực sự được kèo bóng đá pháp. Bất kỳ biểu thức nào sử dụng các cột của bảng và/hoặc các cột của các bảng khác được đề cập trongtừ
, có thể được tính toán. kèo bóng đá pháp giá trị mới (Post Update) của kèo bóng đá pháp cột của bảng được sử dụng.Trở về
Danh sách giống hệt với danh sách đầu kèo bóng đá pháp củaChọn
.
Bạn phải cókèo bóng đá pháp
Đặc quyền trên bảng hoặc ít nhất là trên (các) cột được liệt kê để được kèo bóng đá pháp. Bạn cũng phải cóChọn
Đặc quyền trên bất kỳ cột nào có giá trị được đọc trongBiểu thức
hoặcđiều kiện
.
with_query
Thevới
mệnh đề cho phép bạn chỉ định một hoặc nhiều truy vấn con có thể được tham chiếu theo tên trongkèo bóng đá pháp
Truy vấn. Nhìn thấyPhần 7.8vàChọnĐể biết chi tiết.
Table_Name
Tên (tùy chọn Lược đồ theo trình độ) của bảng để kèo bóng đá pháp. Nếu nhưchỉ
được chỉ định trước tên bảng, các hàng khớp chỉ được kèo bóng đá pháp trong bảng được đặt tên. Nếu nhưchỉ
Không được chỉ định, các hàng khớp cũng được kèo bóng đá pháp trong bất kỳ bảng nào được kế thừa từ bảng được đặt tên. Tùy chọn,*
có thể được chỉ định sau tên bảng để chỉ ra rõ ràng rằng kèo bóng đá pháp bảng hậu duệ được bao gồm.
bí danh
Một tên thay thế cho bảng đích. Khi một bí danh được cung cấp, nó hoàn toàn ẩn tên thực tế của bảng.kèo bóng đá pháp foo as f
, phần còn lại củakèo bóng đá pháp
Câu lệnh phải gọi bảng này làf
khôngfoo
.
Cột_name
Tên của một cột trong bảng được đặt tên bởiTable_Name
. Tên cột có thể đủ điều kiện với một tên trường con hoặc chỉ số mảng, nếu cần.kèo bóng đá pháp bảng_name set table_name.col = 1
không hợp lệ.
Biểu thức
Một biểu thức để gán cho cột. Biểu thức có thể sử dụng kèo bóng đá pháp giá trị cũ của kèo bóng đá pháp cột này và kèo bóng đá pháp cột khác trong bảng.
mặc định
Đặt cột thành giá trị mặc định của nó (sẽ là NULL nếu không có biểu thức mặc định cụ thể nào được gán cho nó).
Sub-Select
AChọn
Trình tải phụ tạo ra nhiều cột đầu ra như được liệt kê trong danh sách cột dấu ngoặc đơn trước nó. Trình độ phụ phải mang lại không quá một kèo bóng đá pháp khi được thực hiện.
from_item
Biểu thức bảng cho phép kèo bóng đá pháp cột từ kèo bóng đá pháp bảng khác xuất hiện trongWHERE
Biểu thức điều kiện và kèo bóng đá pháp. Điều này sử dụng cùng một cú pháp vớitừ
mệnh đềcủa AChọn
Tuyên bố; Ví dụ, một bí danh cho tên bảng có thể được chỉ định.from_item
Trừ khi bạn có ý định tự tham gia (trong trường hợp đó nó phải xuất hiện với bí danh trongfrom_item
).
điều kiện
Một biểu thức trả về giá trị của loạiBoolean
. Chỉ kèo bóng đá pháp hàng mà biểu thức này trả vềTRUE
sẽ được kèo bóng đá pháp.
con trỏ_name
Tên của con trỏ sẽ sử dụng trong Atrong đó hiện tại của
Điều kiện. Hàng được kèo bóng đá pháp là một hàng gần đây nhất được lấy từ con trỏ này.kèo bóng đá pháp
Bảng mục tiêu của bạn. Lưu ý rằngtrong đó hiện tại của
Không thể được chỉ định cùng với điều kiện Boolean. Nhìn thấykhai báoĐể biết thêm thông tin về việc sử dụng con trỏ vớitrong đó hiện tại của
.
output_expression
Một biểu thức được tính toán và trả về bởikèo bóng đá pháp
Lệnh sau mỗi hàng được kèo bóng đá pháp. Biểu thức có thể sử dụng bất kỳ tên cột nào của bảng được đặt tên bởiTable_Name
hoặc bảng được liệt kê trongtừ
. Viết*
Để trả về tất cả kèo bóng đá pháp cột.
output_name
Tên sẽ sử dụng cho cột được trả về.
Khi hoàn thành thành công, mộtkèo bóng đá pháp
Lệnh trả về thẻ lệnh của biểu mẫu
kèo bóng đá phápĐếm
TheĐếm
là số lượng hàng được kèo bóng đá pháp, bao gồm cả các hàng phù hợp có giá trị không thay đổi. Lưu ý rằng số có thể nhỏ hơn số lượng hàng khớp vớiđiều kiện
Khi kèo bóng đá pháp bị đàn áp bởiTrước khi kèo bóng đá pháp
Trigger. Nếu nhưĐếm
là 0, không có hàng nào được kèo bóng đá pháp bởi truy vấn (đây không được coi là lỗi).
Nếukèo bóng đá pháp
Lệnh chứa ATrở về
mệnh đề, kết quả sẽ tương tự như của AChọn
Câu lệnh chứa kèo bóng đá pháp cột và giá trị được xác định trongTrở về
Danh sách, được tính toán trên (các) được kèo bóng đá pháp bởi lệnh.
Khi Atừ
Điều khoản có mặt, về cơ bản xảy ra là bảng đích được nối với các bảng được đề kèo bóng đá pháp trongfrom_item
Danh sách và mỗi hàng đầu ra của tham gia đại diện cho hoạt động kèo bóng đá pháp cho bảng đích. Khi sử dụngtừ
Bạn nên đảm bảo rằng tham gia tạo ra nhiều nhất một hàng đầu ra cho mỗi hàng được sửa đổi. Nói cách khác, một hàng mục tiêu không nên nối với nhiều hơn một hàng từ (kèo bóng đá pháp) bảng khác.
Vì sự không xác định này, việc tham chiếu kèo bóng đá pháp bảng khác chỉ trong kèo bóng đá pháp lựa chọn phụ là an toàn hơn, mặc dù thường khó đọc và chậm hơn so với sử dụng tham gia.
Trong trường hợp bảng được phân vùng, việc kèo bóng đá pháp một hàng có thể khiến nó không còn thỏa mãn ràng buộc phân vùng. Vì không có điều khoản nào để chuyển hàng sang phân vùng phù hợp với giá trị mới của khóa phân vùng, nên một lỗi sẽ xảy ra trong trường hợp này.
Thay đổi từkịch
đếnDramatic
Trong cộtKind
của bảngPhim
:
20721_20779
Điều chỉnh kèo bóng đá pháp mục nhập nhiệt độ và đặt lại lượng mưa theo giá trị mặc định của nó trong một hàng của bảngthời tiết
:
kèo bóng đá pháp bộ thời tiết đặt TEMP_LO = TEMP_LO+1, TEMP_HI = TET
Thực hiện cùng một thao tác và trả về các mục được kèo bóng đá pháp:
21189_21358
Sử dụng cú pháp danh sách cột thay thế để thực hiện cùng một bản kèo bóng đá pháp:
21460_21596
Tăng số lượng doanh số của nhân viên bán kèo bóng đá pháp quản lý tài khoản cho Tập đoàn ACME, sử dụngtừ
Cú pháp mệnh đề:
kèo bóng đá pháp nhân viên đặt Sales_count = Sales_Count + 1 từ tài khoản
Thực hiện cùng một thao tác, sử dụng một lựa chọn phụ trongở đâu
mệnh đề:
kèo bóng đá pháp nhân viên đặt sales_count = sales_count + 1 trong đó id =
kèo bóng đá pháp tên liên lạc trong bảng tài khoản để khớp với nhân viên bán hàng được chỉ định:
kèo bóng đá pháp bộ tài khoản (contact_first_name, contact_last_name) =
Một kết quả tương tự có thể được thực hiện bằng một lần tham gia:
kèo bóng đá pháp tài khoản đặt contact_first_name = first_name,
Tuy nhiên, truy vấn thứ hai có thể cho kết quả không mong muốn nếuBán kèo bóng đá pháp
.id
không phải là khóa duy nhất, trong khi truy vấn đầu tiên được đảm bảo để gây lỗi nếu có nhiềuid
khớp. Ngoài kèo bóng đá pháp, nếu không có sự phù hợp cho một cụ thểTài khoản
.23138_23148
mục nhập, truy vấn đầu tiên sẽ đặt các trường tên tương ứng thành NULL, trong khi truy vấn thứ hai sẽ không kèo bóng đá pháp hàng đó.
kèo bóng đá pháp số liệu thống kê trong bảng tóm tắt để phù hợp với dữ liệu hiện tại:
kèo bóng đá pháp Tóm tắt S Set (SUM_X, SUM_Y, AVG_X, AVG_Y) =
Cố gắng chèn một mặt hàng chứng khoán mới cùng với số lượng cổ phiếu. Nếu mặt hàng đã tồn tại, thay vào đó, hãy kèo bóng đá pháp số lượng cổ phiếu của mặt hàng hiện có.
Bắt đầu;
Thay đổiKind
Cột của bảngPhim
Trong kèo bóng đá pháp trên đó con trỏc_films
Hiện đang được định vị:
24373_24435
Lệnh này phù hợp vớiSQLtiêu chuẩn, ngoại trừtừ
vàTrở về
mệnh đề làPostgreSQLTiện ích mở rộng, cũng như khả năng sử dụngvới
vớikèo bóng đá pháp
.
Một số hệ thống cơ sở dữ liệu khác cung cấp Atừ
tùy chọn trong đó bảng đích được cho là được liệt kê lại trongtừ
. Đó không phải là cáchPostgreSQLGiải thíchtừ
. Hãy cẩn thận khi chuyển kèo bóng đá pháp ứng dụng sử dụng tiện ích mở rộng này.
Theo tiêu chuẩn, giá trị nguồn cho danh sách phụ của kèo bóng đá pháp tên cột mục tiêu có thể là bất kỳ biểu thức có giá trị hàng nào mang lại số lượng cột chính xác.PostgreSQLChỉ cho phép giá trị nguồn làTrình xây dựng kèo bóng đá pháphoặc phụ-Chọn
. Giá trị được kèo bóng đá pháp của một cột cá nhân có thể được chỉ định làMặc định
Trong trường hợp trình điều chỉnh kèo bóng đá pháp, nhưng không phải bên trong phụ-Chọn
.