Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Samouczek MySQL — przewodnik dla początkujących do nauki MySQL

Samouczek MySQL to drugi blog z tej serii. W poprzednim bloguCo to jest MySQL” , przedstawiłem Ci wszystkie podstawowe terminologie, które musisz zrozumieć, zanim zaczniesz korzystać z tej relacyjnej bazy danych. Na tym blogu MySQL poznasz wszystkie operacje i polecenia potrzebne do eksploracji baz danych.

Tematy poruszane na tym blogu są głównie podzielone na 4 kategorie:DDL, DML, DCL i TCL.

  • DDL (Data Definition Language) składa się z tych poleceń, które służą do definiowania bazy danych. Przykład:UTWÓRZ, UPUŚĆ, ZMIEŃ, OBCIĄŻ, KOMENTARZ, ZMIEŃ NAZWĘ.
  • DML Polecenia (Data Manipulation Language) zajmują się manipulacją danymi znajdującymi się w bazie danych. Przykład:WYBIERZ, WSTAW, AKTUALIZUJ, USUŃ.
  • DCL Polecenia (Data Control Language) dotyczą praw, uprawnień i innych kontroli systemu bazy danych. Przykład:GRANT, INVOKE
  • TCL (Transaction Control Language) składa się z tych poleceń, które zajmują się głównie transakcjami w bazie danych.

Oprócz poleceń na blogu znajdują się inne tematy:

  • Różne typy kluczy w bazie danych
  • Ograniczenia używane w bazie danych
  • Zagnieżdżone zapytania
  • Połączenia
  • Ustaw operacje

Zamierzamy omówić każdą z tych kategorii jedna po drugiej.

W tym blogu poświęconym samouczkowi MySQL rozważę poniższą bazę danych jako przykład, aby pokazać, jak pisać polecenia.

Identyfikator ucznia StudentName Nazwa rodzica Adres Miasto Kod pocztowy Kraj Opłaty
01 Haznitiz Emiz Dellys Road Afir 35110 Algieria 42145
02 Shubham Narayan MG Road Bangalore 560001 Indie 45672
03 Salomao Valentim Mayo Road Rio Claro 27460 Brazylia 65432
04 Vishal Ramesz Queens Quay Toronto 416 Kanada 23455
05 Park Jimin Kim Tai Hyung Gangnam Street Seul 135081 Korea Południowa 22353

Tabela 1: Przykładowa baza danych – samouczek MySQL

Zacznijmy więc teraz!

Zasubskrybuj nasz kanał YouTube, aby otrzymywać nowe aktualizacje...!

Samouczek MySQL:Polecenia definicji danych (DDL)

Ta sekcja składa się z tych poleceń, za pomocą których możesz zdefiniować swoją bazę danych. Polecenia to:

  • UTWÓRZ
  • ZMIEŃ
  • DROP
  • OBCIĄGNIJ
  • ZMIEŃ NAZWĘ

Teraz, zanim zacznę z poleceniami, powiem ci, jak wspomnieć o komentarzach w MySQL.

Komentarze

Jak w każdym innym języku programowania, istnieją głównie dwa rodzaje komentarzy.

  • Komentarze jednowierszowe – Komentarze jednowierszowe zaczynają się od „–”. Tak więc każdy tekst wymieniony po — do końca linii zostanie zignorowany przez kompilator.
Przykład:
--Zaznacz wszystko:WYBIERZ * OD Uczniów;
  • Komentarze wielowierszowe – Komentarze wielowierszowe zaczynają się od /* i kończą na */. Tak więc każdy tekst wymieniony pomiędzy /* i */ zostanie zignorowany przez kompilator.
Przykład:
/*Wybierz wszystkie kolumny wszystkich rekordów w tabeli Uczniowie:*/SELECT * FROM Uczniowie;

Teraz, gdy już wiesz, jak wspominać o komentarzach w MySQL, przejdźmy do poleceń DDL.

UTWÓRZ

Instrukcja create służy do tworzenia schematu, tabel lub indeksu.

Oświadczenie „CREATE SCHEMA”

To stwierdzenie służy do tworzenia bazy danych.

Składnia:
UTWÓRZ SCHEMAT Nazwa_bazy danych;
Przykład:
UTWÓRZ SCHEMAT StudentsInfo;

Oświadczenie „CREATE TABLE”

Ta instrukcja służy do tworzenia nowej tabeli w bazie danych.

Składnia:
UTWÓRZ TABELĘ nazwa_tabeli  ( typ danych kolumna1 ,kolumna2 typ danych ,kolumna3 typ danych , ....);
Przykład:
CREATE TABLE Studenci (Identyfikator Studenta int,NazwaStudenta varchar(255),Nazwa Rodzica varchar(255),Adres varchar(255),Kod Pocztowy int,Miasto varchar(255));

Oświadczenie „CREATE TABLE AS”

Ta instrukcja służy do tworzenia nowej tabeli z istniejącej tabeli. Tak więc ta tabela otrzymuje te same definicje kolumn, co w istniejącej tabeli.

Składnia:
UTWÓRZ TABELĘ nowa_nazwa_tabeli JAK WYBRAĆ kolumna1, kolumna2,... Z istniejącej_nazwa_tabeli GDZIE ....;
Przykład:
CREATE TABLE Przykładowa tabela ASSELECT Nazwa ucznia, nazwa rodzicaFROM uczniów;

ZMIANA

Polecenie ALTER służy do dodawania, modyfikowania lub usuwania ograniczeń lub kolumn.

Oświadczenie „ALTER TABLE”

Ta instrukcja służy do dodawania, modyfikowania lub usuwania ograniczeń i kolumn z tabeli.

Składnia:
ALTER TABLE nazwa_tabeli DODAJ typ danych nazwa_kolumny;
Przykład:
ALTER TABLE StudentsADD DateOfBirth date;

UPUŚĆ

Polecenie DROP służy do usuwania bazy danych, tabel lub kolumn.

Oświadczenie „DROP SCHEMA”

To stwierdzenie służy do usunięcia całego schematu.

Składnia:
DROP SCHEMA nazwa_schematu;
Przykład:
DROP SCHEMA StudentsInfo;

Oświadczenie „DROP TABLE”

Ta instrukcja służy do usuwania całej tabeli ze wszystkimi jej wartościami.

Składnia:
DROP TABLE nazwa_tabeli;
Przykład:
DROP TABLE nazwa_tabeli;

OBCIĄGNIJ

Ta instrukcja służy do usuwania danych znajdujących się w tabeli, ale tabela nie jest usuwana.

Składnia:
OBRÓĆ TABELĘ nazwa_tabeli;
Przykład:
OBCIĄŻ UCZNIÓW TABELI;

ZMIEŃ NAZWĘ

To stwierdzenie służy do zmiany nazwy jednej lub więcej tabel.

Składnia:
RENAME TABLE  nazwa_tabeli DO new_tbl_name [, tbl_name2 DO new_tbl_name2 ] ...
Przykład:
ZMIEŃ NAZWĘ Uczniów NA Infostudentów;

Teraz, zanim przejdę do dalszych sekcji, pozwól, że opowiem Ci różne typy kluczy i ograniczeń, o których musisz wspomnieć podczas manipulowania bazami danych.

Samouczek MySQL: Różne typy kluczy w bazie danych

W bazie danych można wymienić głównie 5 typów kluczy.

  • Klucz kandydata – Minimalny zestaw atrybutów, które mogą jednoznacznie identyfikować krotkę, jest znany jako klucz kandydujący. Relacja może zawierać więcej niż jeden klucz kandydujący, przy czym klucz jest kluczem prostym lub złożonym.
  • Superklawisz – Zestaw atrybutów, które mogą jednoznacznie identyfikować krotkę, jest znany jako Super Key. Tak więc klucz kandydujący jest superkluczem, ale odwrotnie nie jest prawdą.
  • Klucz podstawowy – Zestaw atrybutów, których można użyć do jednoznacznej identyfikacji każdej krotki, jest również kluczem podstawowym. Tak więc, jeśli w relacji występują 3-4 klucze kandydujące, to poza nimi jeden może zostać wybrany jako klucz podstawowy.
  • Alternatywny klucz – Klucz kandydujący inny niż klucz podstawowy jest wywoływany jako klucz alternatywny.
  • Klucz obcy – Atrybut, który może przyjmować tylko wartości obecne jako wartości jakiegoś innego atrybutu, jest kluczem obcym atrybutu, do którego się odnosi.

Samouczek MySQL: Ograniczenia używane w bazie danych

Patrz obraz poniżej przedstawia ograniczenia używane w bazie danych.

Rysunek 1: Ograniczenia używane w bazie danych – samouczek MySQL

Teraz, gdy znasz już różne typy kluczy i ograniczeń, przejdźmy do następnej sekcji, tj. Polecenia manipulacji danymi.

Chcesz zostać certyfikowanym Administratorem Baz Danych?

Samouczek MySQL: Polecenia manipulacji danymi (DML)

Ta sekcja składa się z tych poleceń, za pomocą których możesz manipulować bazą danych. Polecenia to:

  • UŻYJ
  • WSTAW
  • AKTUALIZUJ
  • USUŃ
  • WYBIERZ

Oprócz tych poleceń istnieją również inne operatory/funkcje manipulacyjne, takie jak:

  • OPERATORY LOGICZNE
  • OPERATORY ARYTMETYCZNE,BIWISE,PORÓWNANIE I ZWIĄZEK
  • FUNKCJE ŁĄCZNE
  • OPERATORZY SPECJALNI

UŻYJ

Instrukcja USE służy do określenia, która baza danych ma być użyta do wykonania wszystkich operacji.

Składnia:
UŻYJ Nazwa_bazy danych;
Przykład:
UŻYJ StudentsInfo;

WSTAW

Ta instrukcja służy do wstawiania nowych rekordów do tabeli.

Składnia:

Oświadczenie INSERT INTO można zapisać na dwa sposoby:

WSTAW DO nazwa_tabeli (kolumna 1 ,kolumna2 ,kolumna3 , ...)WARTOŚCI (wartość1 ,wartość2 ,wartość3 , ...);--Nie musisz wymieniać nazw kolumn INSERT INTO nazwa_tabeli WARTOŚCI (wartość1 ,wartość2 ,wartość3 , ...);
Przykład:
WSTAW DO Infostudentów (identyfikator studenta, nazwa ucznia, nazwa rodzica, adres, miasto, kod pocztowy, kraj) WARTOŚCI ('06', 'Sanjana', 'Jagannath', 'Banjara Hills', 'Hyderabad', '500046', 'Indie ');WSTAW W InfostudentsVALUES ('07', 'Shivantini','Praveen', 'Camel Street', 'Kolkata', '700096', 'Indie');

AKTUALIZACJA

To stwierdzenie służy do modyfikowania istniejących rekordów w tabeli.

Składnia:
AKTUALIZUJ nazwa_tabeli USTAW kolumna 1  = wartość1 ,kolumna2  =wartość2 , ...GDZIE warunek;
Przykład:
UPDATE InfostudentsSET StudentName ='Alfred', Miasto ='Frankfurt'WHERE StudentID =1;

USUŃ

To stwierdzenie służy do usuwania istniejących rekordów w tabeli.

Składnia:
USUŃ Z nazwa_tabeli GDZIE warunek;
Przykład:
USUŃ Z InfostudentsWHERE StudentName='Salomao';

WYBIERZ

Ta instrukcja służy do wybierania danych z bazy danych, a zwrócone dane są przechowywane w tabeli wyników, zwanej zestawem wyników .

Oto dwa sposoby użycia tego stwierdzenia:

Składnia:
WYBIERZ kolumnę 1 ,kolumna2, ... OD nazwa_tabeli;--(*) służy do wybierania wszystkich z tabeliSELECT * FROM nazwa_tabeli;
Przykład:
SELECT StudentName, Miasto FROM Infostudents;SELECT * FROM Infostudents;

Oprócz pojedynczego słowa kluczowego SELECT, zobaczymy również następujące stwierdzenia, które są używane ze słowem kluczowym SELECT:

  • RÓŻNE
  • ZAMÓW PRZEZ
  • GRUPUJ WG
  • klauzula HAVING

Oświadczenie „SELECT DISTINCT”

Ta instrukcja służy do zwracania tylko odrębnych lub różnych wartości. Tak więc, jeśli masz tabelę ze zduplikowanymi wartościami, możesz użyć tej instrukcji, aby wyświetlić różne wartości.

Składnia:
WYBIERZ RÓŻNE kolumnę 1 ,kolumna2, ... OD nazwa_tabeli;
Przykład:
WYBIERZ Kraj OD Uczniów;

Oświadczenie „ORDER BY”

To stwierdzenie służy do sortowania żądanych wyników w kolejności rosnącej lub malejącej. Domyślnie wyniki byłyby sortowane w porządku rosnącym. Jeśli chcesz, aby rekordy w zestawie wyników były w porządku malejącym, użyj DESC słowo kluczowe.

Składnia:
WYBIERZ kolumnę 1 ,kolumna2, ... OD nazwa_tabeli ORDER BY kolumna1, kolumna2, ...  ASC|DESC;
Przykład:
WYBIERZ * Z InfostudentówORDER WEDŁUG Kraju; SELECT * FROM InfostudentówPORZĄDKUJ WG Kraju DESC;SELECT * FROM InfostudentówPORZĄDKUJ WG Kraju, Nazwisko Ucznia;SELECT * FROM InfostudentówPORZĄDKUJ WG Kraju ASC, Nazwiska Ucznia DESC;

Oświadczenie „GROUP BY”

Ta instrukcja jest używana z funkcjami agregacji do grupowania zestawu wyników według jednej lub więcej kolumn.

Składnia:
WYBIERZ nazwy kolumn OD nazwa_tabeli GDZIE warunek GRUPUJ WG nazwy kolumn ORDER BY nazwy_kolumn; 
Przykład:
SELECT COUNT(StudentID), CountryFROM InfostudentsGROUP BY CountryORDER BY COUNT(StudentID) DESC;

Oświadczenie klauzuli „HAVING”

Od GDZIE słowo kluczowe nie może być używane z funkcjami agregującymi, wprowadzono klauzulę HAVING.

Składnia:
WYBIERZ nazwy kolumn OD nazwa_tabeli GDZIE warunek GRUPUJ WG nazwy kolumn POSIADAJĄC stan ORDER BY nazwy_kolumn; 
Przykład:
SELECT COUNT(StudentID), MiastoFROM InfostudentsGROUP BY MiastoHAVING COUNT(Opłaty)> 23000;

OPERATORZY LOGICZNI

Ten zestaw operatorów składa się z operatorów logicznych, takich jak AND/LUB/NOT.

I OPERATOR

Operator AND służy do filtrowania rekordów, które opierają się na więcej niż jednym warunku. Ten operator wyświetla rekordy, które spełniają wszystkie warunki oddzielone operatorem AND i dają wynik TRUE.

Składnia:
WYBIERZ kolumnę 1 ,kolumna2, ... OD nazwa_tabeli GDZIE warunek1 ORAZ warunek2 ORAZ warunek3 ...;
Przykład:
SELECT * FROM InfostudentsWHERE Kraj='Brazylia' AND Miasto='Rio Claro';

LUB OPERATOR

Operator OR wyświetla te rekordy, które spełniają którykolwiek z warunków rozdzielonych operatorem OR i daje wynik TRUE.

Składnia:
WYBIERZ kolumnę 1 ,kolumna2, ... OD nazwa_tabeli GDZIE warunek1 LUB warunek2 LUB warunek3 ...;
Przykład:
SELECT * FROM InfostudentsWHERE Miasto='Toronto' OR Miasto='Seul';

NIE OPERATOR

Ten operator wyświetla rekord, gdy warunek (warunki) NIE JEST PRAWDZIWY.

Składnia:
WYBIERZ kolumnę 1 ,kolumna2, ... OD nazwa_tabeli GDZIE NIE stan;
Przykład:
SELECT * FROM InfostudentsWHERE NOT Kraj='Indie';--Możesz również połączyć wszystkie powyższe trzy operatory i napisać zapytanie w ten sposób:SELECT * FROM InfostudentsWHERE Kraj='Indie' AND (Miasto='Bangalore' OR Miasto =„Kanada”);
Chcesz złamać wywiady dla administratora bazy danych?

OPERATORY ARYTMETYCZNE, BITWISE, PORÓWNANIA I ZWIĄZKÓW

Patrz obraz poniżej.

Rysunek 2: Operatory arytmetyczne, bitowe, porównania i złożone – samouczek MySQL

FUNKCJE ZAGREGOWANE

Ta sekcja artykułu zawiera następujące funkcje:

  • MIN()
  • MAX()
  • LICZBA()
  • AVG()
  • SUMA()

Funkcja MIN()

Ta funkcja zwraca najmniejszą wartość z wybranej kolumny w tabeli.

Składnia:
SELECT MIN(nazwa_kolumny)FROMnazwa_tabeliWHEREwarunek;
Przykład:
SELECT MIN(StudentID) AS SmallestIDFROM Infostudents;

Funkcja MAX()

Ta funkcja zwraca największą wartość wybranej kolumny w tabeli.

Składnia:
WYBIERZ MAX(nazwa_kolumny )Z nazwa_tabeli GDZIE warunek;
Przykład:
SELECT MAX(Opłaty) AS MaximumFeesFROM Infostudents;

Funkcja COUNT()

Ta funkcja zwraca liczbę wierszy spełniających określone kryteria.

Składnia:
WYBIERZ LICZNIK(nazwa_kolumny )Z nazwa_tabeli GDZIE warunek;
Przykład:
WYBIERZ LICZNIK (ID Studenta) Z Infostudentów;

Funkcja AVG()

Ta funkcja zwraca średnią wartość wybranej kolumny liczbowej.

Składnia:
WYBIERZ AVG(nazwa_kolumny )Z nazwa_tabeli GDZIE warunek;
Przykład:
WYBIERZ AVG (Opłaty) Z Infostudentów;

Funkcja SUMA()

Ta funkcja zwraca całkowitą sumę wybranej kolumny liczbowej.

Składnia:
WYBIERZ SUMA(nazwa_kolumny )Z nazwa_tabeli GDZIE warunek;
Przykład:
SELECT SUM(Opłaty)FROM Infostudentów;

OPERATORZY SPECJALNI

Ta sekcja zawiera następujące operatory:

  • POMIĘDZY
  • JEST NULL
  • LUBIĘ
  • W
  • ISTNIEJE
  • WSZYSTKIE
  • DOWOLNE

POMIĘDZY operatorem

Ten operator jest operatorem włączającym, który wybiera wartości (liczby, teksty lub daty) z danego zakresu.

Składnia:
WYBIERZ nazwy kolumn OD nazwa_tabeli GDZIE nazwa_kolumny  POMIĘDZY wartość1 ORAZ value2; 
Przykład:
WYBIERZ * Z InfostudentsGDZIE Opłaty POMIĘDZY 20000 A 40000;

IS NULL Operator

Ponieważ nie jest możliwe testowanie wartości NULL za pomocą operatorów porównania (=, <,>), możemy zamiast tego użyć operatorów IS NULL i IS NOT NULL.

Składnia:
--Składnia IS NULLSELECT nazwy_kolumn OD nazwa_tabeli GDZIE nazwa_kolumny IS NULL;--Składnia IS NOT NULLSELECT nazwy_kolumn OD nazwa_tabeli GDZIE nazwa_kolumny NIE JEST NULL;
Przykład:
SELECT nazwa_nazwiska, nazwa_rodzica, adres FROM_studentów_informacjiWHERE adres to NULL;_nazwisko_nazwisko_nadrzędne_SELECT, nazwa_nadrzędna, adres FROM_studentów_informacyjnychWHERE adres NIE JEST NULL;

Operator LIKE

Ten operator jest używany w klauzuli WHERE do wyszukiwania określonego wzorca w kolumnie tabeli.

Wspomniane poniżej dwa symbole wieloznaczne są używane w połączeniu z operatorem LIKE:

  • % – znak procentu reprezentuje zero, jeden lub wiele znaków
  • _ – Podkreślenie reprezentuje pojedynczy znak
Składnia:
WYBIERZ kolumnę 1, kolumnę 2, ... OD nazwa_tabeli GDZIE kolumna LIKE wzór;

W poniższej tabeli znajdziesz różne wzorce, które możesz wymienić za pomocą operatora LIKE.

Operator LIKE Opis
GDZIE nazwa klienta LIKE ‘z% Znajduje wartości zaczynające się od „z”
GDZIE nazwa klienta LIKE „%z” Wyszukuje wartości, które kończą się na „z”
GDZIE nazwa klienta LIKE „%and%” Znajduje dowolne wartości, które mają „i” w dowolnej pozycji
GDZIE nazwa klienta LIKE „_s%” Znajduje wszystkie wartości, które mają „s” na drugiej pozycji.
WHERE CustomerName LIKE 'd_%_%' Znajduje wartości, które zaczynają się od „d” i mają co najmniej 3 znaki długości
GDZIE ContactName LIKE „j%l” Wyszukuje wartości, które zaczynają się od „j” i kończą na „l”

Tabela 2: Wzorce wymienione za pomocą operatora LIKE – samouczek MySQL

Przykład:
SELECT * FROM InfostudentsGDZIE StudentName LIKE 'S%';

Operator IN

Jest to skrócony operator dla wielu warunków OR, który umożliwia określenie wielu wartości w klauzuli WHERE.

Składnia:
WYBIERZ nazwy kolumn OD nazwa_tabeli GDZIE nazwa_kolumny IN (wartość1 ,wartość2 , ...);
Przykład:
SELECT * FROM InfostudentsWHERE Kraj IN („Algieria”, „Indie”, „Brazylia”);

Uwaga: Możesz również użyć IN podczas pisania zapytań zagnieżdżonych. Rozważ poniższą składnię:

OPERATOR ISTNIEJE

Ten operator służy do sprawdzania, czy rekord istnieje, czy nie.

Składnia:
WYBIERZ nazwy kolumn OD nazwa_tabeli WHERE EXISTS (WYBIERZ nazwa_kolumny  OD nazwa_tabeli GDZIE warunek );
Przykład:
SELECT NazwaUczniaFROM InformacjestudentsWHERE EXISTS (SELECT Nazwa rodzica FROM Informacjestudents WHERE Identyfikator studenta=05 Id Cena <  

WSZYSCY operator

Ten operator jest używany z klauzulą ​​WHERE lub HAVING i zwraca prawdę, jeśli wszystkie wartości podzapytania spełniają warunek.

Składnia:
WYBIERZ nazwy kolumn OD nazwa_tabeli GDZIE operator nazwy kolumny WSZYSTKO(WYBIERZ nazwa_kolumny  OD nazwa_tabeli  GDZIE warunek );
Przykład:
SELECT StudentNameFROM InfostudentsWHERE StudentID = ALL (SELECT StudentID FROM Infostudents WHERE Opłaty> 20000);

KAŻDY operator

Podobnie do operatora ALL, operator ANY jest również używany z klauzulą ​​WHERE lub HAVING i zwraca wartość true, jeśli którakolwiek z wartości podzapytania spełnia warunek.

Składnia:
WYBIERZ nazwy kolumn OD nazwa_tabeli GDZIE operator nazwy kolumny DOWOLNY(WYBIERZ nazwa_kolumny  OD nazwa_tabeli GDZIE warunek );
Przykład:
SELECT StudentNameFROM InfostudentsWHERE StudentID =ANY (SELECT Student ID FROM Infostudents WHERE Opłaty BETWEEN 22000 A 23000);

Teraz, gdy już dużo opowiedziałem o poleceniach DML, powiem pokrótce o zapytaniach zagnieżdżonych, złączeniach i operacjach ustawiania.

Chcesz wiedzieć, jak skonfigurować relacyjną bazę danych w chmurze?

Samouczek MySQL: Zagnieżdżone zapytania

Zagnieżdżone zapytania to te zapytania, które mają zapytanie zewnętrzne i podzapytanie wewnętrzne. Zasadniczo więc podzapytanie jest zapytaniem zagnieżdżonym w innym zapytaniu, takim jak SELECT, INSERT, UPDATE lub DELETE. Zobacz obrazek poniżej:

Rys 3: Reprezentacja zagnieżdżonych zapytań – samouczek MySQL

Samouczek MySQL: Dołączenia

JOINS służą do łączenia wierszy z co najmniej dwóch tabel na podstawie powiązanej kolumny między tymi tabelami. Oto typy złączeń:

  • DOŁĄCZENIE WEWNĘTRZNE: To złączenie zwraca te rekordy, które mają pasujące wartości w obu tabelach.
  • Pełne dołączenie: 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.StudentNameFROM CoursesINNER 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.CourseIDFROM InfostudentsFULL OUTER JOIN Orders ON Infostudents.StudentID=Orders.StudentIDORDER 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.CourseIDFROM InfostudentsLEFT JOIN Courses ON Infostudents.CustomerID =Courses.StudentIDORDER 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.CourseIDFROM CoursesRIGHT 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 SAVEPOINTROLLBACK 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.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Przykłady transakcji PHP + MySQL

  2. MySQL otrzymuje pozycję wiersza w ORDER BY

  3. Błąd:Przestrzeń tabel dla tabeli xxx istnieje. Proszę ODRZUĆ obszar tabel przed IMPORTOWANIEM

  4. Lista specyfikatorów formatu daty w MySQL

  5. Najbardziej wydajny sposób wstawiania wierszy do bazy danych MySQL