Nếu có thể, hãy tránh sử dụng CURSORs
. SQL được thiết kế để thực hiện mọi thứ hàng loạt, không phải từng hàng một.
Nghiên cứu các cấu trúc như
INSERT INTO ... SELECT ...;
CREATE TABLE ... SELECT ...;
Ví dụ:pods_cursor
có thể được loại bỏ thông qua:
INSERT INTO tblResultsErrors
(POD, QtyMeasured)
SELECT els.LocationCode, els.Quantity
FROM EnergyLocation el
RIGHT JOIN EnergyLocationSeries els
ON els.LocationCode = el.Code2 OR els.LocationCode = el.Codep
LEFT JOIN EnergyContract ec
on ec.LocationId = el.Id
WHERE el.Code2 IS NULL;
(Rất tiếc. Kết hợp PHẢI và TRÁI khiến đầu tôi quay cuồng như một con cú.)
Sử dụng OR
trong ON
nghe rất kém hiệu quả. Mục đích là gì?