Vermeiden Sie nach Möglichkeit die Verwendung von CURSORs
. SQL wurde entwickelt, um Dinge in großen Mengen zu erledigen, nicht zeilenweise.
Studieren Sie Konstrukte wie
INSERT INTO ... SELECT ...;
CREATE TABLE ... SELECT ...;
Beispiel:pods_cursor
kann wahrscheinlich beseitigt werden über:
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;
(Autsch. Wenn ich RECHTS und LINKS kombiniere, dreht sich mein Kopf wie der einer Eule.)
Mit OR
in ON
klingt sehr ineffizient. Was ist die Absicht?