Du hast Fragen? Wir haben Antworten! - Bald findet unser nächster Tag der offenen Tür statt!

Logo site

SQL ROWCOUNT: Alles über SQL-Formeln

-
3
 Minuten Lesezeit
-
sql rowcount

SQL-Datenbanken bestehen normalerweise aus mehreren hundert oder sogar tausend Zeilen. Aber oftmals betreffen Änderungen, Auswahlen, Aktualisierungen und andere Anweisungen nur wenige Zeilen. Um genau zu wissen, wie viele Zeilen von deinen verschiedenen Operationen betroffen sind, kannst du SQL ROWCOUNT verwenden. Entschlüsseln.

SQL ROWCOUNT, um die Zeilen zu zählen

@ROWCOUNT ist eine SQL-Abfrage, die die Anzahl der Zeilen zurückgeben soll, die von der zuletzt ausgeführten Anweisung betroffen sind. Dabei kann es sich um eine beliebige SQL-Anweisung wie INSERT, UPDATE, DELETE, SELECT usw. handeln.

Damit SQL ROWCOUNT richtig funktioniert, müssen beide Abfragen (ROWCOUNT und die Anweisung, die die Zeilen beeinflusst) in der gleichen Ausführung sein. Wenn sie getrennt ausgeführt werden, ist der zurückgegebene Wert 1; dies entspricht nicht der Anzahl der Zeilen, die durch die zuvor ausgeführte Anweisung zugewiesen wurden.

Das Ziel von @@ROWCOUNT ist es, Endlosschleifen zu vermeiden, wenn eine Datenbank in einer Schleife analysiert wird. Wenn also alle Zeilen verarbeitet wurden, wird der Analyseprozess dank SQL ROWCOUNT automatisch gestoppt.

Neben der Verarbeitung von Daten in einer Schleife kann diese Abfrage auch die Anzahl der Zeilen überprüfen, die in einer Anweisung zugewiesen sind. Auf diese Weise erleichtert ROWCOUNT die Behandlung möglicher Fehler.

5 Beispiele für die Verwendung von SQL ROWCOUNT

SQL ROWCOUNT kann mit allen Arten von Anweisungen ausgeführt werden. Um dir ein besseres Verständnis zu ermöglichen, findest du hier einige Beispiele.

ROWCOUNT und SELECT

Bei gleichzeitiger Verwendung von SQL ROWCOUNT und SELECT wird die Anzahl der von der ursprünglichen Abfrage ausgewählten Zeilen ermittelt.

Dies äußert sich wie folgt:

SELECT TOP (100)

FROM [tabellenname]

SELECT @@ROWCOUNT

Die Anzahl der von der SELECT-Abfrage betroffenen Zeilen wird dann am unteren Rand der Tabelle angezeigt.

Es ist auch möglich, @@ROWCOUNT aufzurufen, nachdem du zwei SELECT-Befehle in einer Operation ausgeführt hast.

Beispiel:

SELECT TOP (100)

FROM [tabellenname_1]

SELECT top (100)

FROM [tabellenname_1] – [tabellenname_2].

In diesem Fall berücksichtigt die SQL-Abfrage ROWCOUNT nur die zweite Anweisung.

 

💡 Auch interessant:

SQL Index – Wozu dient er?
Fremdschlüssel SQL
Dateformat SQL
SQL Developper Tool
SQL Distinct

ROWCOUNT et UPDATE

Wenn du SQL ROWCOUNT nach der Verwendung einer UPDATE-Abfrage aufrufst, kannst du die Anzahl der Zeilen ermitteln, die während dieser Operation aktualisiert wurden.

Diese Kombination sieht folgendermaßen aus:

UPDATE [tabellenname].

SET [spalten_name] = ’neuer Wert‘.

WHERE condition

SELECT @@ROWCOUNT

Auch hier erscheint die Anzahl der aktualisierten Zeilen unterhalb der Tabelle.

ROWCOUNT und DELETE

Durch die Kombination von ROWCOUNT und DELETE wird die Anzahl der gelöschten Zeilen ermittelt.

Die Syntax lautet wie folgt:

DELETE [tabellenname]

WHERE condition

SELECT @@ROWCOUNT

ROWCOUNT und INSERT

Bei der INSERT-Abfrage gibt der SQL-Befehl ROWCOUNT die Anzahl der hinzugefügten Zeilen an. .=

Hier ist die grundlegende Syntax: 

INSERT INTO table 


VALUES ('Wert 1', 'Wert 2', ...)


SELECT @@ROWCOUNT

.
Es ist auch möglich, Batch-Abfragen auszuführen, indem du den Befehl GO hinzufügst.

Zum Beispiel: 

INSERT INTO table 


VALUES (‚Wert 1‘, ‚Wert 2‘, ‚Wert 3‘).

GO 10.

SELECT @@ROWCOUNT.

Wenn es in einer Operation mehrere gleichzeitige Abfragen gibt, berücksichtigt SQL ROWCOUNT nur die letzte Abfrage. In diesem Beispiel wird der Befehl ROWCOUNT, selbst wenn die INSERT-Abfrage zehnmal wiederholt wird, nur drei Änderungen anzeigen, da dies die Anzahl der Werte ist, die durch die letzte Abfrage geändert wurden.

Diese Regel gilt für alle Anweisungen, unabhängig davon, ob es sich um INSERT. SELECT, UPDATE, DELETE, etc. 

ROWCOUNT und IF

SQL ROWCOUNT kann auch in Verbindung mit IF verwendet werden, um den Fluss der Anweisung zu kontrollieren. Je nachdem, wie viele Zeilen betroffen sind, kann eine bestimmte Nachricht hinzugefügt werden. 

Zum Beispiel: 

SELECT TOP (100)

FROM [tabellenname]

IF @@ROWCOUNT > 10 

PRINT „message_1“

ELSE

PRINT „message_2“

In diesem Beispiel bedeutet das: Wähle die Top 100 von [tabellenname]. Wenn die Anzahl der Zeilen größer als 10 ist, schreibe Nachricht_1, wenn nicht, schreibe Nachricht_2. Da es in diesem Fall darum geht, eine Top 100 auszuwählen, wird die Anzahl der Zeilen tatsächlich größer als 10 sein, so dass Nachricht_1 erscheint.

 

💡Auch interessant:

MySQL Relationale Datenbanksoftware
SQL Tutorial
Apache Cassandra noSQL BDD
SQL Joins
SQL Count Tutorial
SQL Datei öffnen
SQL vs. NOSQL

Lerne SQL mit DataScientest

SQL ROWCOUNT ist nur eine Abfrage unter den vielen Möglichkeiten, die die SQL-Sprache bietet. Es gibt auch Aktualisierungen, Löschungen, Hinzufügungen, Bedingungen, Auslöser, etc.

Die Beherrschung dieser Sprache gehört zu den grundlegenden Fähigkeiten eines jeden Fachmanns, der lernen muss, mit relationalen Datenbanken flüssig umzugehen. Um dies zu erreichen, muss man Theorie (um alle verfügbaren Abfragen zu kennen) und Praxis (um sie von Fall zu Fall anzuwenden) miteinander verbinden. Genau das ist es, was wir bei DataScientest mit unseren zahlreichen Schulungen rund um Daten anbieten. Entdecke sie!

DataScientest News

Melde Dich jetzt für unseren Newsletter an, um unsere Guides, Tutorials und die neuesten Entwicklungen im Bereich Data Science direkt per E-Mail zu erhalten.

Möchtest Du informiert bleiben?

Schreib uns Deine E-Mail-Adresse, damit wir Dir die neuesten Artikel zum Zeitpunkt der Veröffentlichung zusenden können!
icon newsletter

DataNews

Starte Deine Karriere im Bereich Data: Erhalte regelmäßig Insiderwissen und wertvolle Karrieretipps in Deinem Posteingang.