Einführung in die WHERE-Klausel

Wie wir alle wissen, ist SQL (Structured Query Language) eine der am häufigsten verwendeten Sprachen für relationale Datenbanken (Datenbanken, in denen Datensätze in Form von Zeilen und Spalten gespeichert werden). In SQL werden Abfragen ausgelöst, um auf die Datenbank zuzugreifen und die gewünschten Vorgänge auszuführen, sei es DML-Vorgänge (Data Manipulation Language), DDL-Vorgänge (Data Definition Language) oder DCL-Vorgänge (Data Control Language). SQL verwendet einige Klauseln wie WHERE, GROUP BY, HAVING, ORDER BY, die bestimmte Operationen ausführen. Die WHERE-Klausel wird verwendet, um Bedingungen anzuwenden und Ergebnisse herauszufiltern, während Daten aus der Datenbank abgerufen oder bearbeitet werden. Es wird mit der SELECT-, UPDATE- und DELETE-Anweisung verwendet, und die WHERE-Klausel ist optional, um mit ihnen verwendet zu werden.

Im Allgemeinen, Begriffe, WHERE-Klausel,

  • Wird verwendet, um die Zeilen nach den angegebenen Kriterien zu filtern.
  • Beschränkt die Anzahl der zurückgegebenen Zeilen.
  • Gefolgt von einer logischen Bedingung, die entweder true oder false zurückgibt.
  • Funktioniert nur, wenn die angegebene Bedingung true zurückgibt.
  • Es kann mit SELECT-, UPDATE- oder DELETE-Anweisungen verwendet werden.

1. Syntax mit SELECT

SELECT column1, column2, column3… from table_name WHERE condition;

Hier ruft SELECT alle Daten von Spalte1, Spalte2, Spalte3 aus der Tabelle (mit dem Namen Tabellenname) ab, und die WHERE-Klausel wendet die Bedingungen auf die von der SELECT-Anweisung abgerufenen Daten an und filtert diese entsprechend der in der Anweisung angegebenen Bedingung.

2. Syntax mit UPDATE

UPDATE table_name SET column_name = value WHERE condition;

Hier aktualisiert Update den Wert für den Spaltennamen mit der angegebenen where-Bedingung.

Vergleichsoperatoren und logische Operatoren können auch mit der WHERE-Bedingung wie und oder nicht wie, <, = usw. verwendet werden.

3. Syntax mit DELETE

DELETE from table_name WHERE condition;

In der obigen Syntax:

TabellennameName der Tabelle, für die Operationen ausgeführt werden müssen.
BedingungGibt die Filterbedingung an, nach der Datensätze gefiltert werden müssen
column_listName der Spalten der Tabelle

Beispiele

Stellen Sie sich eine Schülertabelle mit verschiedenen Spalten und Werten vor:

Stu_idStu_nameStu_addressStu_phnoStu_percentage
1RahulAgra955780662585
2AnkitDelhi885566447175
3ShailendraNoida721345789692

Szenario 1

Rufen Sie den Studentenausweis, den Namen, die Adresse und den Prozentsatz aller Studenten ab, die mehr als 80 Prozent erreicht haben.

Abfrage

SELECT Stu_id, Stu_name, Stu_address from students WHERE Stu_percentage > 80;

Ergebnis:

Anzahl der Datensätze: 2

Stu_idStu_nameStu_addressStu_percentage
1RahulAgra85
3ShailendraNoida92

Szenario 2

Aktualisieren Sie den Prozentsatz von Rahul um 2 Prozent.

Abfrage

UPDATE students SET Stu_percentage = Stu_percentage+2 WHERE Stu_name ='Rahul';

Ergebnis:

Betroffene Zeilen: 1

Wenn wir die Abfrage treffen, um die aktualisierten Felder anzuzeigen:

Abfrage

SELECT * from students WHERE Stu_name ='Rahul';

Ergebnis:

Anzahl der Datensätze: 1

Stu_idStu_nameStu_addressStu_percentage
1RahulAgra87

Szenario 3

Student Ankit hat die Schule verlassen, also löschen Sie den gesamten Datensatz von ihm vom Tisch.

Abfrage

DELETE from students WHERE Stu_name = 'Ankit';

Ergebnis:

Betroffene Zeilen: 1

So zeigen Sie den aktualisierten Tabellenschüler an:

Abfrage

SELECT * from students;

Ergebnis:

Betroffene Zeilen: 2

Stu_idStu_nameStu_addressStu_phnoStu_percenta ge
1RahulAgra955780662587
3ShailendraNoida721345789692

WHERE-Klausel Operationen

Die WHERE-Klausel enthält die Bedingungen, unter denen Datenbankwerte gefiltert werden. Mit der WHERE-Klausel können verschiedene Operatoren verwendet werden. Einige davon sind in der folgenden Tabelle anhand eines Beispiels aufgeführt:

S.No.OperatorBeschreibungBeispiel
1.UNDGibt true zurück, wenn beide Bedingungen erfüllt sindSELECT * von Schülern WHERE Stu_name = 'Rahul' und Stu_percentage = 85;
2.ODERGibt true zurück, wenn einer der

Bedingung entspricht

SELECT * von Schülern WHERE Stu_name = 'Rahul' oder Stu_name = 'Shalendra';
3.IMDer Wert stimmt mit einem der mehreren angegebenen Werte übereinSELECT * von Studenten WHERE Stu_city IN ('AGRA', 'NOIDA');
4.NICHT INDer Wert stimmt mit keinem der angegebenen Mehrfachwerte übereinSELECT * von Schülern WHERE Stu_city NOT IN ('AGRA', 'NOIDA');
5.=GleichSELECT * von Studenten WO

Stu_name = 'Rahul';

6.>Größer alsSELECT * von Studenten WHERE Stu_percentage> 80;
7.<Weniger alsSELECT * von Schülern WHERE Stu_percentage <78;
8.> =Größer als oder gleich wieSELECT * von Schülern WHERE Stu_percenetage> = 70;
9.<=Weniger als oder gleichSELECT * von Schülern WHERE Stu_percenetage <= 70;
10.Nicht gleichSELECT * von Studenten WHERE Stu_percentage 75;
11.ZWISCHENDer Wert liegt zwischen einem bestimmten BereichSELECT * von Studenten WO

Stu_percentage ZWISCHEN 70 UND 85;

12.MÖGENWerte stimmen mit einem bestimmten Muster überein. Dient zum Durchführen von PlatzhaltersuchenSELECT * von Studenten WHERE Stu_city LIKE 'AG%';

Hinweis: Bei der Arbeit mit der WHERE-Klausel muss beachtet werden, dass numerische Werte nicht in einfachen Anführungszeichen ('') angegeben werden, während Textwerte (varchar) in einfachen Anführungszeichen angegeben werden müssen Anführungszeichen ('').

Wie funktioniert die WHERE-Klausel in SQL?

Die obigen Beispiele zeigen jedoch deutlich, wie die WHERE-Klausel zum Filtern der Daten gemäß der vom Benutzer angegebenen Bedingung verwendet wird, und ermöglichen die schnellere Ausführung von SQL-Code, da die Anzahl der zurückgegebenen Datensätze durch die Bedingung begrenzt ist. Der SQL Query Optimizer bearbeitet zunächst die Abfrage mit FROM (Tabelle, für die der Vorgang ausgeführt werden muss), um die Ergebnisse abzurufen, zu löschen oder zu aktualisieren und anschließend die WHERE-Klausel anzuwenden.

Die WHERE-Klausel kann nur verwendet werden, wenn die Ergebnisse in einer einzelnen Tabelle oder einem Join von Tabellen gefiltert werden müssen, da sie für Zeilendaten verwendet werden. Im Fall der Aggregatfunktionen kann WHERE jedoch nicht zum Anwenden von Bedingungen auf die Abfrage verwendet werden.

Betrachten wir das Szenario, in dem die WHERE-Klausel nicht verwendet werden kann:

Szenario: Rufen Sie in einer "Kino" -Tabelle alle Details von Filmen ab, die in bestimmten Jahren mehr als 10 Crores verdienen, z. B. (2000, 2010, 2012, usw.).

Abfrage:

SELECT * from movies GROUP BY Year_released HAVING earnings > 10;

Im obigen Beispiel wird die HAVING-Klausel anstelle von WHERE verwendet, da die WHERE-Klausel in den Aggregatfunktionen nicht verwendet werden kann, während HAVING dies kann. Dies ist auch einer der Hauptunterschiede zwischen der WHERE- und der HAVING-Klausel

Schlussfolgerung - SQL WHERE-Klausel

Die obige Erläuterung zeigt deutlich die Verwendung der WHERE-Klausel und ihre Implementierung für verschiedene Szenarien in SQL-Abfragen. Bevor Sie eine Abfrage schreiben, müssen Sie die Verwendung jeder Klausel und das Szenario berücksichtigen, in dem diese bestimmte Klausel oder dieses Schlüsselwort verwendet werden soll.

Empfohlene Artikel

Dies ist eine Anleitung zur SQL WHERE-Klausel. Hier diskutieren wir die Verwendung der WHERE-Klausel und ihre Implementierung für verschiedene Szenarien. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. Arten von Joins in SQL
  2. Platzhalter in MySQL
  3. SQL-Einfügeabfrage
  4. Fremdschlüssel in SQL
  5. Top 6 Arten von Joins in MySQL mit Beispielen