MySQL Tutorial ist der zweite Blog in dieser Blogserie. Im vorherigen Blog „Was ist MySQL“ , habe ich Ihnen alle grundlegenden Terminologien vorgestellt, die Sie verstehen müssen, bevor Sie mit dieser relationalen Datenbank beginnen. In diesem MySQL-Blog lernen Sie alle Operationen und Befehle kennen, die Sie zum Erkunden Ihrer Datenbanken benötigen.
Die in diesem Blog behandelten Themen sind hauptsächlich in 4 Kategorien unterteilt:DDL, DML, DCL und TCL.
- Die DDL (Data Definition Language) besteht aus den Befehlen, die zur Definition der Datenbank verwendet werden. Beispiel:CREATE, DROP, ALTER, TRUNCATE, COMMENT, RENAME.
- Die DML (Data Manipulation Language)-Befehle befassen sich mit der Manipulation von Daten, die in der Datenbank vorhanden sind. Beispiel:AUSWÄHLEN, EINFÜGEN, AKTUALISIEREN, LÖSCHEN.
- Die DCL (Data Control Language)-Befehle befassen sich mit den Rechten, Berechtigungen und anderen Kontrollen des Datenbanksystems. Beispiel:GRANT, INVOKE
- Die TCL ( Transaction Control Language) besteht aus den Befehlen, die sich hauptsächlich mit der Transaktion der Datenbank befassen.
Abgesehen von den Befehlen werden die folgenden anderen Themen im Blog behandelt:
- Verschiedene Arten von Schlüsseln in der Datenbank
- In der Datenbank verwendete Beschränkungen
- Verschachtelte Abfragen
- Beitreten
- Operationen festlegen
Wir werden jede dieser Kategorien einzeln behandeln.
In diesem Blog zum MySQL-Tutorial werde ich die folgende Datenbank als Beispiel betrachten, um Ihnen zu zeigen, wie man Befehle schreibt.
Schüler-ID | StudentName | ParentName | Adresse | City | PostalCode | Land | Gebühren |
01 | Haznitiz | Emiz | Dellys Road | Afir | 35110 | Algerien | 42145 |
02 | Shubham | Narayan | MG Road | Bangalore | 560001 | Indien | 45672 |
03 | Salomao | Valentim | Mayo Road | Rio Claro | 27460 | Brasilien | 65432 |
04 | Vishal | Ramesh | Queens Quay | Toronto | 416 | Kanada | 23455 |
05 | Park Jimin | Kim Tai Hyung | Gangnam Street | Seoul | 135081 | Südkorea | 22353 |
Tabelle 1: Beispieldatenbank – MySQL-Tutorial
Also, fangen wir jetzt an!
Abonnieren Sie unseren YouTube-Kanal, um neue Updates zu erhalten..!
MySQL-Tutorial:Befehle zur Datendefinition (DDL)
Dieser Abschnitt besteht aus den Befehlen, mit denen Sie Ihre Datenbank definieren können. Die Befehle sind:
- ERSTELLEN
- ÄNDERN
- DROP
- TRUNCATE
- UMBENENNEN
Nun, bevor ich mit den Befehlen beginne, lassen Sie mich Ihnen kurz sagen, wie Sie die Kommentare in MySQL erwähnen.
Kommentare
Wie bei jeder anderen Programmiersprache gibt es hauptsächlich zwei Arten von Kommentaren.
- Einzeilige Kommentare – Die einzeiligen Kommentare beginnen mit „–“. Daher wird jeder Text, der nach — bis zum Ende der Zeile erwähnt wird, vom Compiler ignoriert.
Beispiel:
--Select all: SELECT * FROM Students;
- Mehrzeilige Kommentare – Die mehrzeiligen Kommentare beginnen mit /* und enden mit */. Daher wird jeder Text, der zwischen /* und */ erwähnt wird, vom Compiler ignoriert.
Beispiel:
/*Select all the columns of all the records in the Students table:*/ SELECT * FROM Students;
Da Sie nun wissen, wie man Kommentare in MySQL erwähnt, fahren wir mit den DDL-Befehlen fort.
ERSTELLEN
Die create-Anweisung wird verwendet, um entweder ein Schema, Tabellen oder einen Index zu erstellen.
Die „CREATE SCHEMA“-Anweisung
Diese Anweisung wird verwendet, um eine Datenbank zu erstellen.
Syntax:
CREATE SCHEMA Database_Name;
Beispiel:
CREATE SCHEMA StudentsInfo;
Die 'CREATE TABLE'-Anweisung
Diese Anweisung wird verwendet, um eine neue Tabelle in einer Datenbank zu erstellen.
Syntax:
CREATE TABLE table_name ( column1 datatype, column2 datatype, column3 datatype, .... );
Beispiel:
CREATE TABLE Students ( StudentID int, StudentName varchar(255), ParentName varchar(255), Address varchar(255), PostalCode int, City varchar(255) );
Die 'CREATE TABLE AS'-Anweisung
Diese Anweisung wird verwendet, um eine neue Tabelle aus einer bestehenden Tabelle zu erstellen. Diese Tabelle erhält also dieselben Spaltendefinitionen wie die vorhandene Tabelle.
Syntax:
CREATE TABLE new_table_name AS SELECT column1, column2,... FROM existing_table_name WHERE ....;
Beispiel:
CREATE TABLE ExampleTable AS SELECT Studentname, Parentname FROM Students;
ÄNDERN
Der ALTER-Befehl wird verwendet, um Einschränkungen oder Spalten hinzuzufügen, zu ändern oder zu löschen.
Die „ALTER TABLE“-Anweisung
Diese Anweisung wird verwendet, um Beschränkungen und Spalten einer Tabelle hinzuzufügen, zu ändern oder zu löschen.
Syntax:
ALTER TABLE table_name ADD column_name datatype;
Beispiel:
ALTER TABLE Students ADD DateOfBirth date;
FALLEN
Der DROP-Befehl wird verwendet, um die Datenbank, Tabellen oder Spalten zu löschen.
Die „DROP SCHEMA“-Erklärung
Diese Anweisung wird verwendet, um das komplette Schema zu löschen.
Syntax:
DROP SCHEMA schema_name;
Beispiel:
DROP SCHEMA StudentsInfo;
Die 'DROP TABLE'-Anweisung
Diese Anweisung wird verwendet, um die gesamte Tabelle mit all ihren Werten zu löschen.
Syntax:
DROP TABLE table_name;
Beispiel:
DROP TABLE table_name;
KÜRZEN
Diese Anweisung wird verwendet, um die Daten zu löschen, die in einer Tabelle vorhanden sind, aber die Tabelle wird nicht gelöscht.
Syntax:
TRUNCATE TABLE table_name;
Beispiel:
TRUNCATE TABLE Students;
UMBENENNEN
Diese Anweisung wird verwendet, um eine oder mehrere Tabellen umzubenennen.
Syntax:
RENAME TABLE tbl_name TO new_tbl_name [, tbl_name2 TO new_tbl_name2] ...
Beispiel:
RENAME Students TO Infostudents;
Nun, bevor ich zu den weiteren Abschnitten übergehe, lassen Sie mich Ihnen die verschiedenen Arten von Schlüsseln und Beschränkungen erklären, die Sie erwähnen müssen, während Sie die Datenbanken manipulieren.
MySQL-Tutorial: Verschiedene Arten von Schlüsseln in der Datenbank
Es gibt hauptsächlich 5 Arten von Schlüsseln, die in der Datenbank erwähnt werden können.
- Kandidatenschlüssel – Der minimale Satz von Attributen, die ein Tupel eindeutig identifizieren können, wird als Kandidatenschlüssel bezeichnet. Eine Beziehung kann mehr als einen einzelnen Schlüsselkandidaten enthalten, wobei der Schlüssel entweder ein einfacher oder ein zusammengesetzter Schlüssel ist.
- Superschlüssel – Der Satz von Attributen, die ein Tupel eindeutig identifizieren können, wird als Superschlüssel bezeichnet. Ein Kandidatenschlüssel ist also ein Superschlüssel, aber umgekehrt ist es nicht wahr.
- Primärschlüssel – Ein Primärschlüssel ist auch eine Reihe von Attributen, mit denen jedes Tupel eindeutig identifiziert werden kann. Wenn also in einer Beziehung 3-4 Schlüsselkandidaten vorhanden sind, kann einer von diesen als Primärschlüssel ausgewählt werden.
- Alternativschlüssel – Der andere Schlüsselkandidat als der Primärschlüssel wird als alternativer Schlüssel. bezeichnet
- Fremdschlüssel – Ein Attribut, das nur die vorhandenen Werte als Werte eines anderen Attributs annehmen kann, ist der Fremdschlüssel des Attributs, auf das es sich bezieht.
MySQL-Tutorial: In der Datenbank verwendete Beschränkungen
Beziehen Sie sich auf das Bild unten für die Einschränkungen, die in der Datenbank verwendet werden.
Abbildung 1: In der Datenbank verwendete Einschränkungen – MySQL-Tutorial
Da Sie nun die verschiedenen Arten von Schlüsseln und Beschränkungen kennen, fahren wir mit dem nächsten Abschnitt fort, d. h. Datenmanipulationsbefehlen.
Möchten Sie ein zertifizierter Datenbankadministrator werden?MySQL-Tutorial: Befehle zur Datenmanipulation (DML)
Dieser Abschnitt besteht aus den Befehlen, mit denen Sie Ihre Datenbank manipulieren können. Die Befehle sind:
- VERWENDEN
- EINFÜGEN
- AKTUALISIEREN
- LÖSCHEN
- AUSWÄHLEN
Neben diesen Befehlen gibt es auch andere manipulative Operatoren/Funktionen wie:
- LOGISCHE OPERATOREN
- ARITHMETISCHE, BITWISE, VERGLEICHS- UND VERBUNDOPERATOREN
- AGGREGIERFUNKTIONEN
- SPEZIALOPERATOREN
VERWENDUNG
Die USE-Anweisung wird verwendet, um anzugeben, welche Datenbank verwendet werden muss, um alle Operationen auszuführen.
Syntax:
USE Database_name;
Beispiel:
USE StudentsInfo;
EINFÜGEN
Diese Anweisung wird verwendet, um neue Datensätze in eine Tabelle einzufügen.
Syntax:
Die INSERT INTO-Anweisung kann auf die folgenden zwei Arten geschrieben werden:
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...); --You need not mention the column names INSERT INTO table_name VALUES (value1, value2, value3, ...);
Beispiel:
INSERT INTO Infostudents(StudentID, StudentName, ParentName, Address, City, PostalCode, Country) VALUES ('06', 'Sanjana','Jagannath', 'Banjara Hills', 'Hyderabad', '500046', 'India'); INSERT INTO Infostudents VALUES ('07', 'Shivantini','Praveen', 'Camel Street', 'Kolkata', '700096', 'India');
AKTUALISIEREN
Diese Anweisung wird verwendet, um die bestehenden Datensätze in einer Tabelle zu ändern.
Syntax:
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
Beispiel:
UPDATE Infostudents SET StudentName = 'Alfred', City= 'Frankfurt' WHERE StudentID = 1;
LÖSCHEN
Diese Anweisung wird verwendet, um bestehende Datensätze in einer Tabelle zu löschen.
Syntax:
DELETE FROM table_name WHERE condition;
Beispiel:
DELETE FROM Infostudents WHERE StudentName='Salomao';
AUSWÄHLEN
Diese Anweisung wird verwendet, um Daten aus einer Datenbank auszuwählen, und die zurückgegebenen Daten werden in einer Ergebnistabelle gespeichert, die als Ergebnismenge bezeichnet wird .
Im Folgenden finden Sie zwei Möglichkeiten, diese Anweisung zu verwenden:
Syntax:
SELECT column1, column2, ... FROM table_name; --(*) is used to select all from the table SELECT * FROM table_name;
Beispiel:
SELECT StudentName, City FROM Infostudents; SELECT * FROM Infostudents;
Neben dem einzelnen SELECT-Schlüsselwort werden wir auch die folgenden Anweisungen sehen, die mit dem SELECT-Schlüsselwort verwendet werden:
- DISTINCT
- ORDER BY
- GRUPPE NACH
- HAVING-Klausel
Die „SELECT DISTINCT“-Anweisung
Diese Anweisung wird verwendet, um nur eindeutige oder unterschiedliche Werte zurückzugeben. Wenn Sie also eine Tabelle mit doppelten Werten haben, können Sie diese Anweisung verwenden, um unterschiedliche Werte aufzulisten.
Syntax:
SELECT DISTINCT column1, column2, ... FROM table_name;
Beispiel:
SELECT Country FROM Students;
Die „ORDER BY“-Anweisung
Diese Anweisung wird verwendet, um die gewünschten Ergebnisse in aufsteigender oder absteigender Reihenfolge zu sortieren. Standardmäßig werden die Ergebnisse in aufsteigender Reihenfolge sortiert. Wenn Sie die Datensätze in der Ergebnismenge in absteigender Reihenfolge haben möchten, verwenden Sie DESC Schlüsselwort.
Syntax:
SELECT column1, column2, ... FROM table_name ORDER BY column1, column2, ... ASC|DESC;
Beispiel:
SELECT * FROM Infostudents ORDER BY Country; SELECT * FROM Infostudents ORDER BY Country DESC; SELECT * FROM Infostudents ORDER BY Country, StudentName; SELECT * FROM Infostudents ORDER BY Country ASC, StudentName DESC;
Die „GROUP BY“-Anweisung
Diese Anweisung wird mit den Aggregatfunktionen verwendet, um die Ergebnismenge nach einer oder mehreren Spalten zu gruppieren.
Syntax:
SELECT column_name(s) FROM table_name WHERE condition GROUP BY column_name(s) ORDER BY column_name(s);
Beispiel:
SELECT COUNT(StudentID), Country FROM Infostudents GROUP BY Country ORDER BY COUNT(StudentID) DESC;
Die „HAVING“-Klauselerklärung
Seit dem WHERE Schlüsselwort kann nicht mit Aggregatfunktionen verwendet werden, die HAVING-Klausel wurde eingeführt.
Syntax:
SELECT column_name(s) FROM table_name WHERE condition GROUP BY column_name(s) HAVING condition ORDER BY column_name(s);
Beispiel:
SELECT COUNT(StudentID), City FROM Infostudents GROUP BY City HAVING COUNT(Fees) > 23000;
LOGISCHE OPERATOREN
Diese Gruppe von Operatoren besteht aus logischen Operatoren wie AND/OR/NOT.
UND BEDIENER
Der UND-Operator wird verwendet, um Datensätze zu filtern, die auf mehr als einer Bedingung beruhen. Dieser Operator zeigt die Datensätze an, die alle durch AND getrennten Bedingungen erfüllen und den Ausgang TRUE liefern.
Syntax:
SELECT column1, column2, ... FROM table_name WHERE condition1 AND condition2 AND condition3 ...;
Beispiel:
SELECT * FROM Infostudents WHERE Country='Brazil' AND City='Rio Claro';
ODER BEDIENER
Der ODER-Operator zeigt die Datensätze an, die eine der durch ODER getrennten Bedingungen erfüllen, und liefert die Ausgabe WAHR.
Syntax:
SELECT column1, column2, ... FROM table_name WHERE condition1 OR condition2 OR condition3 ...;
Beispiel:
SELECT * FROM Infostudents WHERE City='Toronto' OR City='Seoul';
KEIN BETREIBER
Dieser Operator zeigt einen Datensatz an, wenn die Bedingung(en) NICHT WAHR ist.
Syntax:
SELECT column1, column2, ... FROM table_name WHERE NOT condition;
Beispiel:
SELECT * FROM Infostudents WHERE NOT Country='India'; --You can also combine all the above three operators and write a query like this: SELECT * FROM Infostudents WHERE Country='India' AND (City='Bangalore' OR City='Canada');Sind Sie daran interessiert, Interviews für Datenbankadministratoren zu knacken?
ARITHMETISCHE, BITWISE, VERGLEICHS- UND VERBUNDOPERATOREN
Beziehen Sie sich auf das Bild unten.
Abbildung 2: Arithmetische, bitweise, Vergleichs- und zusammengesetzte Operatoren – MySQL-Tutorial
AGGREGATFUNKTIONEN
Dieser Abschnitt des Artikels umfasst die folgenden Funktionen:
- MIN()
- MAX()
- COUNT()
- AVG()
- SUMME()
MIN()-Funktion
Diese Funktion gibt den kleinsten Wert der ausgewählten Spalte in einer Tabelle zurück.
Syntax:
SELECT MIN(column_name) FROMtable_name WHEREcondition;
Beispiel:
SELECT MIN(StudentID) AS SmallestID FROM Infostudents;
MAX()-Funktion
Diese Funktion gibt den größten Wert der ausgewählten Spalte in einer Tabelle zurück.
Syntax:
SELECT MAX(column_name) FROM table_name WHERE condition;
Beispiel:
SELECT MAX(Fees) AS MaximumFees FROM Infostudents;
COUNT()-Funktion
Diese Funktion gibt die Anzahl der Zeilen zurück, die den angegebenen Kriterien entsprechen.
Syntax:
SELECT COUNT(column_name) FROM table_name WHERE condition;
Beispiel:
SELECT COUNT(StudentID) FROM Infostudents;
AVG()-Funktion
Diese Funktion gibt den Durchschnittswert einer von Ihnen ausgewählten numerischen Spalte zurück.
Syntax:
SELECT AVG(column_name) FROM table_name WHERE condition;
Beispiel:
SELECT AVG(Fees) FROM Infostudents;
SUM()-Funktion
Diese Funktion gibt die Gesamtsumme einer von Ihnen ausgewählten numerischen Spalte zurück.
Syntax:
SELECT SUM(column_name) FROM table_name WHERE condition;
Beispiel:
SELECT SUM(Fees) FROM Infostudents;
SPEZIALOPERATOREN
Dieser Abschnitt enthält die folgenden Operatoren:
- ZWISCHEN
- IST NULL
- LIKE
- EIN
- EXISTIERT
- ALLE
- JEDER
BETWEEN-Operator
Dieser Operator ist ein inklusiver Operator, der Werte (Zahlen, Texte oder Daten) innerhalb eines bestimmten Bereichs auswählt.
Syntax:
SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2;
Beispiel:
SELECT * FROM Infostudents WHERE Fees BETWEEN 20000 AND 40000;
IS NULL-Operator
Da es nicht möglich ist, mit den Vergleichsoperatoren (=, <,>) auf NULL-Werte zu testen, können wir stattdessen die Operatoren IS NULL und IS NOT NULL verwenden.
Syntax:
--Syntax for IS NULL SELECT column_names FROM table_name WHERE column_name IS NULL; --Syntax for IS NOT NULL SELECT column_names FROM table_name WHERE column_name IS NOT NULL;
Beispiel:
SELECT StudentName, ParentName, Address FROM Infostudents WHERE Address IS NULL; SELECT StudentName, ParentName, Address FROM Infostudents WHERE Address IS NOT NULL;
LIKE-Operator
Dieser Operator wird in einer WHERE-Klausel verwendet, um nach einem bestimmten Muster in einer Spalte einer Tabelle zu suchen.
Die unten genannten sind die beiden Platzhalter, die in Verbindung mit dem LIKE-Operator verwendet werden:
- % – Das Prozentzeichen steht für null, ein oder mehrere Zeichen
- _ – Der Unterstrich steht für ein einzelnes Zeichen
Syntax:
SELECT column1, column2, ... FROM table_name WHERE column LIKE pattern;
In der folgenden Tabelle finden Sie die verschiedenen Muster, die Sie mit dem LIKE-Operator angeben können.
LIKE-Operator | Beschreibung |
WHERE CustomerName LIKE ‘z% | Findet alle Werte, die mit „z“ beginnen |
WHERE CustomerName LIKE ‘%z’ | Findet alle Werte, die auf „z“ enden |
WHERE CustomerName LIKE ‘%and%’ | Findet alle Werte, die „und“ an beliebiger Position haben |
WHERE CustomerName LIKE ‘_s%’ | Findet alle Werte, die ein „s“ an der zweiten Position haben. |
WHERE CustomerName LIKE 'd_%_%' | Findet alle Werte, die mit „d“ beginnen und mindestens 3 Zeichen lang sind |
WHERE ContactName LIKE ‘j%l’ | Findet alle Werte, die mit „j“ beginnen und mit „l“ enden |
Tabelle 2: Mit LIKE-Operator erwähnte Muster – MySQL-Tutorial
Beispiel:
SELECT * FROM Infostudents WHERE StudentName LIKE 'S%';
IN-Operator
Dies ist ein Kurzoperator für mehrere ODER-Bedingungen, mit dem Sie mehrere Werte in einer WHERE-Klausel angeben können.
Syntax:
SELECT column_name(s) FROM table_name WHERE column_name IN (value1, value2, ...);
Beispiel:
SELECT * FROM Infostudents WHERE Country IN ('Algeria', 'India', 'Brazil');
Hinweis: Sie können IN auch beim Schreiben von verschachtelten Abfragen verwenden. Betrachten Sie die folgende Syntax:
EXISTS-Operator
Dieser Operator wird verwendet, um zu testen, ob ein Datensatz existiert oder nicht.
Syntax:
SELECT column_name(s) FROM table_name WHERE EXISTS (SELECT column_name FROM table_name WHERE condition);
Beispiel:
SELECT StudentName FROM Infostudents WHERE EXISTS (SELECT ParentName FROM Infostudents WHERE StudentId = 05 AND Price < 25000);
ALL-Operator
Dieser Operator wird mit einer WHERE- oder HAVING-Klausel verwendet und gibt wahr zurück, wenn alle Unterabfragewerte die Bedingung erfüllen.
Syntax:
SELECT column_name(s) FROM table_name WHERE column_name operator ALL (SELECT column_name FROM table_name WHERE condition);
Beispiel:
SELECT StudentName FROM Infostudents WHERE StudentID = ALL (SELECT StudentID FROM Infostudents WHERE Fees > 20000);
JEDER Operator
Ähnlich wie der ALL-Operator wird auch der ANY-Operator mit einer WHERE- oder HAVING-Klausel verwendet und gibt wahr zurück, wenn einer der Unterabfragewerte die Bedingung erfüllt.
Syntax:
SELECT column_name(s) FROM table_name WHERE column_name operator ANY (SELECT column_name FROM table_name WHERE condition);
Beispiel:
SELECT StudentName FROM Infostudents WHERE StudentID = ANY (SELECT SttudentID FROM Infostudents WHERE Fees BETWEEN 22000 AND 23000);
Nun, da ich Ihnen viel über DML-Befehle erzählt habe, lassen Sie mich Ihnen kurz etwas über verschachtelte Abfragen, Joins und Set-Operationen erzählen.
Möchten Sie wissen, wie Sie eine relationale Datenbank in der Cloud einrichten?MySQL-Tutorial: Verschachtelte Abfragen
Verschachtelte Abfragen sind solche Abfragen, die eine äußere Abfrage und eine innere Unterabfrage haben. Im Grunde ist die Unterabfrage also eine Abfrage, die in eine andere Abfrage wie SELECT, INSERT, UPDATE oder DELETE verschachtelt ist. Siehe folgendes Bild:
Abb. 3: Darstellung verschachtelter Abfragen – MySQL-Tutorial
MySQL-Tutorial: Beitreten
JOINS are used to combine rows from two or more tables, based on a related column between those tables. The following are the types of joins:
- INNER JOIN: This join returns those records which have matching values in both the tables.
- FULL JOIN: This join returns all those records which either have a match in the left or the right table.
- LEFT JOIN: This join returns records from the left table, and also those records which satisfy the condition from the right table.
- RIGHT JOIN: This join returns records from the right table, and also those records which satisfy the condition from the left table.
Refer to the image below.
Fig 4: Representation Of Joins – MySQL Tutorial
Let’s consider the below table apart from the Infostudents table, to understand the syntax of joins.
CourseID | StudentID | CourseName | StartDate |
1 | 10 | DevOps | 09-09-2018 |
2 | 11 | Blockchain | 07-04-2018 |
3 | 12 | Python | 08-06-2018 |
Table 3: Sample Database – MySQL Tutorial
INNER JOIN
Syntax:
SELECT column_name(s) FROM table1 INNER JOIN table2 ON table1.column_name = table2.column_name;
Example:
SELECT Courses.CourseID, Infostudents.StudentName FROM Courses INNER JOIN Infostudents ON Courses.StudentID = Infostudents.StudentID;
FULL JOIN
Syntax:
SELECT column_name(s) FROM table1 FULL OUTER JOIN table2 ON table1.column_name = table2.column_name;
Example:
SELECT Infostudents.StudentName, Courses.CourseID FROM Infostudents FULL OUTER JOIN Orders ON Infostudents.StudentID=Orders.StudentID ORDER BY Infostudents.StudentName;
LEFT JOIN
Syntax:
SELECT column_name(s) FROM table1 LEFT JOIN table2 ON table1.column_name = table2.column_name;
Example:
SELECT Infostudents.StudentName, Courses.CourseID FROM Infostudents LEFT JOIN Courses ON Infostudents.CustomerID = Courses.StudentID ORDER BY Infostudents.StudentName;
RIGHT JOIN
Syntax:
SELECT column_name(s) FROM table1 RIGHT JOIN table2 ON table1.column_name = table2.column_name;
Example:
SELECT Courses.CourseID FROM Courses RIGHT JOIN Infostudents ON Courses.StudentID = Infostudents.StudentID ORDER BY Courses.CourseID;
MySQL Tutorial: Set Operations
There are mainly three set operations:UNION, INTERSECT, SET DIFFERENCE. You can refer to the image below to understand the set operations in SQL.
Now, that you guys know the DML commadsn. Let’s move onto our next section and see the DCL commands.
MySQL Tutorial: Data Control (DCL) Commands
This section consists of those commands which are used to control privileges in the database. The commands are:
- GRANT
- REVOKE
GRANT
This command is used to provide user access privileges or other privileges for the database.
Syntax:
GRANT privileges ON object TO user;
Example:
GRANT CREATE ANY TABLE TO localhost;
REVOKE
This command is used to withdraw user’s access privileges given by using the GRANT command.
Syntax:
REVOKE privileges ON object FROM user;
Example:
REVOKE INSERT ON *.* FROM Infostudents;
Now, let’s move on to the last section of this blog i.e. the TCL Commands.
MySQL Tutorial: Transaction Control (TCL) Commands
This section of commands mainly deals with the transaction of the database. The commands are:
- COMMIT
- ROLLBACK
- SAVEPOINT
- RELEASE SAVEPOINT
- SET TRANSACTION
COMMIT
This command saves all the transactions to the database since the last COMMIT or ROLLBACK command.
Syntax:
COMMIT;
Example:
DELETE FROM Infostudents WHERE Fees = 42145; COMMIT;
ROLLBACK
This command is used to undo transactions since the last COMMIT or ROLLBACK command was issued.
Syntax:
ROLLBACK;
Example:
DELETE FROM Infostudents WHERE Fees = 42145; ROLLBACK;
SAVEPOINT
This command creates points within the groups of transactions in which to ROLLBACK. So, with this command, you can simply roll the transaction back to a certain point without rolling back the entire transaction.
Syntax:
SAVEPOINT SAVEPOINT_NAME; --Syntax for saving the SAVEPOINT ROLLBACK TO SAVEPOINT_NAME; --Syntax for rolling back to the Savepoint command
Example:
SAVEPOINT SP1; DELETE FROM Infostudents WHERE Fees = 42145; SAVEPOINT SP2;
RELEASE SAVEPOINT
You can use this command to remove a SAVEPOINT that you have created.
Syntax:
RELEASE SAVEPOINT SAVEPOINT_NAME;
Example:
RELEASE SAVEPOINT SP2;
SET TRANSACTION
This command gives a name to the transaction.
Syntax:
SET TRANSACTION [ READ WRITE | READ ONLY ];
I hope you enjoyed reading this blog on MySQL Tutorial blog. We have seen the different commands that will help you write queries and play around with your databases.
Interested in learning more about MySQL?If you wish to learn more about MySQL and get to know this open source relational database, then check out our MySQL DBA Certification Training which comes with instructor-led live training and real-life project experience. This training will help you understand MySQL in depth and help you achieve mastery over the subject.
Got a question for us? Please mention it in the comments section of ”MySQL Tutorial ” and I will get back to you.