Performance von Schleifen

Im Umfeld vom MS SQL Server habe ich mal die Aussage gehört, das alle Schleifen mit Standard SQL Konstrukten ersetzbar sind. Zudem sollte immer der Einsatz von Schleifen vermieden werden, da diese den Mengen-orientierten Ansatz einer Datenbank durchbrechen und eine Abfrage ab einer bestimmten Menge an Datensätzen stark verlangsamen kann.

Gilt dies auch für den PSQL Server? Oder greifen hier effektive Optimierungsverfahren, durch die es keinen Unterschied macht ob eine Schleife verwendet wird oder nicht?

Gruß

Ja, das gilt generell.

“Alle” wage ich zu bezweifeln - aber wenn die Schleife durch ein einzelnes Statement ersetzbar ist, dann ist das einzelne Statement mit Sicherheit schneller.

Das gilt letztendlich für alle relationale Datenbanken. Für Postgres genauso wie für Oracle, DB2 oder SQL Server. Relationale Datenbanken sind darauf ausgelegt “Mengen” zu verarbeiten. Nicht zu unrecht wird von vielen Leuten “row-by-row” auch als “slow-by-slow” geschrieben bzw. “übersetzt”

Grundsätzlich gilt (für alle DBs): ein Statement welches 1000 Datensätze verarbeitet ist (fast) immer schneller als 1000 Statements welche jeweils einen Datensatz verarbeiten.