Database
 sql >> Datenbank >  >> RDS >> Database

SQL-Tutorial:One-Stop-Lösung zum Erlernen von SQL

Auf dem heutigen Markt, wo jeden Tag etwa 2,5 Trillionen Bytes an Daten generiert werden, ist es sehr wichtig zu verstehen, wie man mit solch einer riesigen Datenmenge umgeht. Nun, hier kommt die Structured Query Language oder SQL ins Spiel. Daher werde ich in diesem Artikel zum SQL-Tutorial die folgenden wichtigen Konzepte diskutieren, die ein Muss auf dem Weg zum Datenbankadministrator sind.

  • Einführung in SQL
    1. Was ist SQL?
    2. Anwendungen von SQL
    3. SQL-Datentypen
    4. SQL-Operatoren
  • Top SQL-Befehle
    1. ERSTELLEN
    2. LÖSCHEN
    3. ÄNDERN
    4. KÜRZEN
    5. ERKLÄREN
    6. EINFÜGEN IN
    7. AKTUALISIEREN
    8. AUSWÄHLEN
    9. Gefällt mir
    10. GEWÄHRUNG
  • Schlüssel in der Datenbank
  • SQL-Einschränkungen
  • Normalisierung
  • SQL-Joins
  • Aufrufe

SQL-Tutorial:Einführung in SQL

Was ist SQL?

Die von Donald D.Chamberlin in den 1970er Jahren entwickelte Structured Query Language oder am häufigsten als SQL bekannt, ist eine der beliebtesten Sprachen, die zum Bearbeiten, Speichern, Aktualisieren und Abrufen von Daten verwendet wird eine relationale Datenbank. SQL besteht aus verschiedenen Befehlen, die in 4 Kategorien unterteilt sind, d. H. DDL, DML, DCL und TCL, um mit Daten in Datenbanken zu spielen. Auch relationale Datenbanken wie MySQL-Datenbanken, Oracle, MS SQL Server, Sybase usw. verwenden SQL, um Daten zu ändern.

SQL-Anwendungen

Die Anwendungen von SQL sind wie folgt:

  • Mit SQL können Sie Tabellen und Datenbanken erstellen und löschen.
  • Es erlaubt den Benutzern, Daten in Datenbanken zu definieren und zu manipulieren.
  • SQL ermöglicht den Benutzern, auf Daten in RDBMS zuzugreifen, sie zu ändern und zu beschreiben.
  • Mit SQL können Sie Berechtigungen für Tabellen, Ansichten und Prozeduren festlegen und verschiedenen Benutzern bestimmte Berechtigungen erteilen.
  • SQL ermöglicht Ihnen die Einbettung in andere Sprachen mithilfe von SQL-Bibliotheken und -Modulen.

Da Sie nun die Grundlagen von SQL kennen, lassen Sie uns als Nächstes in diesem SQL-Tutorial verstehen, was die verschiedenen SQL-Datentypen sind.

SQL-Datentypen

SQL-Datentypen werden in die folgenden Kategorien unterteilt:

  • Numerisch – Die numerischen Datentypen erlauben sowohl vorzeichenbehaftete als auch vorzeichenlose Ganzzahlen. Sie können weiter in exakte und ungefähre Datentypen unterteilt werden, wobei exakt Ganzzahlen in Form ganzer Zahlen erlaubt und ungefähr Gleitkommazahlen erlaubt.
  • Zeichenkette – Dieser Datentyp erlaubt Zeichen fester und variabler Länge. Dieser Datentyp kann auch weiter in Unicode-Zeichen kategorisiert werden, die eine feste und variable Länge von Unicode-Zeichen zulassen.
  • Binär – Die binären Datentypen ermöglichen die Speicherung von Daten im Format binärer Werte mit fester und variabler Länge.
  • Datum und Uhrzeit – Dieser Datentyp ermöglicht die Speicherung von Daten in verschiedenen Datums- und Zeitformaten.
  • Andere – Dieser Abschnitt der Datentypen enthält Datentypen wie table, XML, cursor, uniqueidentifier und sql_variant.

Wenn Sie ein detailliertes Verständnis der verschiedenen SQL-Datentypen erhalten möchten, können Sie sich auf die ausführliche Anleitung zu SQL-Datentypen beziehen.

SQL-Operatoren

Operatoren sind die Konstrukte, die die Werte der Operanden manipulieren können. Betrachten Sie den Ausdruck 4 + 6 =10, hier sind 4 und 6 Operanden und + heißt Operator.

SQL unterstützt die folgenden Arten von Operatoren:

  • Arithmetische Operatoren
  • Bitweise Operatoren
  • Vergleichsoperatoren
  • Zusammengesetzte Operatoren
  • Logische Operatoren

Um die verschiedenen von SQL unterstützten Operatoren ausführlich kennenzulernen, klicken Sie hier. Nun, da Sie wissen, was SQL und seine Grundlagen sind, lassen Sie uns die wichtigsten Befehle oder Anweisungen in SQL verstehen.

SQL-Tutorial:Die wichtigsten SQL-Befehle

SQL besteht aus verschiedenen Befehlen oder Anweisungen zum Hinzufügen, Ändern, Löschen oder Aktualisieren von Daten in der Datenbank. In diesem Artikel zum SQL-Tutorial werden wir die folgenden Anweisungen besprechen:

    1. ERSTELLEN
    2. LÖSCHEN
    3. ÄNDERN
    4. KÜRZEN
    5. ERKLÄREN
    6. EINFÜGEN IN
    7. AKTUALISIEREN
    8. AUSWÄHLEN
    9. Gefällt mir
    10. GEWÄHRUNG

In diesem SQL-Tutorial werde ich die folgende Datenbank als Beispiel betrachten, um Ihnen zu zeigen, wie Sie Abfragen mit diesen SQL-Befehlen schreiben.

Kundennummer Kundenname Telefonnummer Adresse Stadt Land
1 Simon 9876543210 Donald Street 52 Hyderabad Indien
2 Akash 9955449922 Queens Road 74 Mumbai Indien
3 Patrick 9955888220 Seidentafel 82 Delhi Indien
4 Gleicher 9647974327 IG Straße 19 Hyderabad Indien
5 Johannes 9674325689 Brigaden-Straßensperre 9 Bangalore Indien

ERSTELLEN

Die CREATE-Anweisung wird verwendet, um eine Tabelle, Ansicht oder Datenbank auf folgende Weise zu erstellen:

DATENBANK ERSTELLEN

Wird verwendet, um eine Datenbank zu erstellen.

Syntax

CREATE DATABASE DatabaseName;

Beispiel

 
CREATE DATABASE CustomerInfo; 

TABELLE ERSTELLEN

Diese Anweisung wird verwendet, um eine Tabelle zu erstellen.

Syntax

CREATE TABLE TableName (
Column1 data type,
Column2 data type,
....

ColumnN data type
);

Beispiel

 
CREATE TABLE Customers
(
CustomerID int,
CustomerName varchar(255),
PhoneNumber int,
Address varchar(255),
City varchar(255),
Country varchar(255)
);

ANSICHT ERSTELLEN

Wird verwendet, um eine Ansicht zu erstellen.

Syntax

CREATE VIEW OR REPLACE ViewName AS
SELECT Column1, Column2, ..., ColumnN
FROM TableName
WHERE Condition;

Beispiel

CREATE VIEW OR REPLACE HydCustomers AS
SELECT CustomerName, PhoneNumber
FROM Customers
WHERE City = "Hyderabad";

Hinweis: Bevor Sie mit dem Erstellen einer Tabelle und dem Eingeben von Werten beginnen, müssen Sie die Datenbank verwenden, indem Sie die USE-Anweisung als [USE CustomersInfo; verwenden ]

FALLEN

Die DROP-Anweisung wird verwendet, um eine vorhandene Tabelle, Ansicht oder Datenbank zu löschen.

DATENBANK LÖSCHEN

Wird verwendet, um die Datenbank zu löschen. Wenn Sie diese Anweisung verwenden, gehen alle in der Datenbank vorhandenen Informationen verloren.

Syntax

DROP DATABASE DatabaseName;

Beispiel

DROP DATABASE CustomerInfo;

FALLTABELLE

Wird verwendet, um die Tabelle zu löschen. Wenn Sie diese Anweisung verwenden, gehen alle in der Tabelle enthaltenen Informationen verloren.

Syntax

DROP TABLE TableName;

Beispiel

DROP TABLE Customers;

DROP-ANSICHT

Wird verwendet, um die Ansicht zu löschen. Wenn Sie diese Anweisung verwenden, gehen alle in der Ansicht vorhandenen Informationen verloren.

Syntax

DROP VIEW ViewName;

Beispiel

DROP VIEW HydCustomers;

ÄNDERN

Die ALTER-Anweisung wird verwendet, um Einschränkungen oder Spalten in einer bestehenden Tabelle hinzuzufügen, zu löschen oder zu ändern.

TABELLE ÄNDERN

Die ALTER-Anweisung wird verwendet, um Spalten in einer bestehenden Tabelle zu löschen, hinzuzufügen und zu ändern. Sie können ALTER TABLE mit ADD/DROP-Spalte verwenden, um eine Spalte in der Tabelle hinzuzufügen oder zu löschen. Abgesehen davon können Sie auch eine bestimmte Spalte ÄNDERN/ÄNDERN.

Syntax

ALTER TABLE TableName
ADD ColumnName Data Type;
ALTER TABLE TableName
DROP COLUMN ColumnName;

ALTER TABLE TableName
ALTER COLUMN ColumnName Data Type;

Beispiel

--ADD Column Gender:
 ALTER TABLE Customers
ADD  Gender varchar(255);
 
--DROP Column Gender: 
ALTER TABLE Customers
DROP COLUMN Gender ;

--Add a column DOB and change the data type from Date to Year.
 
ALTER TABLE DOB
ADD DOB date;
 
ALTER TABLE DOB
ALTER DOB year;

KÜRZEN

Die TRUNCATE-Anweisung wird verwendet, um die in der Tabelle vorhandenen Informationen zu löschen, aber nicht die Tabelle selbst. Sobald Sie also diesen Befehl verwenden, gehen Ihre Informationen verloren, aber die Tabelle ist nicht mehr in der Datenbank vorhanden.

Syntax

TRUNCATE TABLE TableName;

Beispiel

TRUNCATE Table Customers;

ERKLÄREN

Die Anweisungen EXPLAIN und DESCRIBE sind Synonyme, die zum Abrufen eines Abfrageausführungsplans bzw. der Informationen über eine Tabellenstruktur verwendet werden. Diese Anweisung kann mit INSERT -, DELETE -, SELECT -, UPDATE - und REPLACE -Anweisungen verwendet werden.

Syntax

--Syntax for DESCRIBE
DESCRIBE TableName;

--Sample syntax for EXPLAIN
EXPLAIN ANALYZE SELECT * FROM TableName1 JOIN TableName2 ON (TableName1.ColumnName1 = TableName2.ColumnName2);

Beispiel

DESCRIBE Customers;

EXPLAIN ANALYZE SELECT * FROM Customers1 JOIN Orders ON (Customers.CustomerID = Orders.CustomerID);

EINFÜGEN IN

Die Anweisung INSERT INTO wird verwendet, um neue Datensätze in eine Tabelle einzufügen.

Syntax

INSERT INTO TableName (Column1, Column2, Column3, ...,ColumnN)
VALUES (value1, value2, value3, ...);

--If you do not want to mention the column names then use the below syntax, but the order of values entered should match the column data types :

INSERT INTO TableName
VALUES (Value1, Value2, Value3, ...);

Beispiel

INSERT INTO Customers(CustomerID, CustomerName, PhoneNumber, Address, City, Country)
VALUES ('06', 'Sanjana', '9654323491', 'Oxford Street House No 10', 'Bengaluru', 'India');
 
INSERT INTO Customers
VALUES ('07', 'Himani','9858018368', 'Nice Road 42', 'Kolkata', 'India');

AKTUALISIEREN

Die UPDATE-Anweisung wird verwendet, um die bereits in der Tabelle vorhandenen Datensätze zu ändern.

Syntax

UPDATE TableName
SET Column1 = Value1, Column2 = Value2, ...
WHERE Condition;

Beispiel

UPDATE Customers
SET CustomerName = 'Aisha', City= 'Kolkata'
WHERE EmployeeID = 2;

AUSWÄHLEN

Die SELECT-Anweisung wird verwendet, um Daten aus einer Datenbank auszuwählen und in einer Ergebnistabelle zu speichern, die als Ergebnismenge bezeichnet wird .

Syntax

SELECT Column1, Column2, ...ColumN
FROM TableName;

--(*) is used to select all from the table
SELECT * FROM table_name;

-- To select the number of records to return use:
SELECT TOP 3 * FROM TableName;

Beispiel

SELECT CustomerID, CustomerName
FROM Customers;
 
--(*) is used to select all from the table
SELECT * FROM Customers;
 
-- To select the number of records to return use:
SELECT TOP 3 * FROM Customers;

Außerdem können Sie das Schlüsselwort SELECT mit DISTINCT, ORDER BY, GROUP BY, HAVING-Klausel und INTO verwenden.

WIE

Dieser Operator wird mit einer WHERE-Klausel verwendet, um nach einem bestimmten Muster in einer Spalte einer Tabelle zu suchen. Es gibt hauptsächlich zwei Wildcards, die in Verbindung mit dem LIKE-Operator verwendet werden:

  • % – Es stimmt mit 0 oder mehr Zeichen überein.
  • _ – Es stimmt mit genau einem Zeichen überein.

Syntax

SELECT ColumnName(s)
FROM TableName
WHERE ColumnName LIKE pattern;

Beispiel

SELECT * FROM Customers
WHERE CustomerName LIKE 'S%';

GEWÄHRUNG

Der GRANT-Befehl wird verwendet, um den Benutzern Privilegien oder Zugriff auf die Datenbank und ihre Objekte zu gewähren.

Syntax

GRANT PrivilegeName
ON ObjectName
TO {UserName |PUBLIC |RoleName}
[WITH GRANT OPTION];

wo,

  • Berechtigungsname – Die dem Benutzer gewährten Privilegien/Rechte/Zugriffe.
  • Objektname – Name eines Datenbankobjekts wie TABLE/VIEW/STORED PROC.
  • Benutzername – Name des Benutzers, der Zugriff/Rechte/Privilegien erhält.
  • ÖFFENTLICH – Um allen Benutzern Zugriffsrechte zu gewähren.
  • Rollenname – Der Name einer Gruppe von Privilegien, die zusammen gruppiert sind.
  • MIT GEWÄHRUNGSOPTION – Um dem Benutzer Zugriff zu geben, um anderen Benutzern Rechte zu erteilen.

Beispiel

-- To grant SELECT permission to Customers table to admin
GRANT SELECT ON Customers TO admin;

Jetzt, da Sie die wichtigsten SQL-Befehle kennen, lassen Sie uns verstehen, welche verschiedenen Arten von Schlüsseln in der Datenbank verwendet werden. Nun, dieses Konzept hilft Ihnen zu verstehen, wie jede Tabelle in einem relationalen Datenbankverwaltungssystem mit der anderen Tabelle zusammenhängt.

SQL-Tutorial:Schlüssel

Die folgenden 7 Arten von Schlüsseln können in einer Datenbank berücksichtigt werden:

  • Kandidatenschlüssel – Ein Satz von Attributen, die eine Tabelle eindeutig identifizieren können, kann als Kandidatenschlüssel bezeichnet werden. Eine Tabelle kann mehr als einen Kandidatenschlüssel haben, und aus den ausgewählten Kandidatenschlüsseln kann ein Schlüssel als Primärschlüssel ausgewählt werden.
  • Superschlüssel – Der Satz von Attributen, die ein Tupel eindeutig identifizieren können, wird als Superschlüssel bezeichnet. Ein Kandidatenschlüssel, ein Primärschlüssel und ein eindeutiger Schlüssel sind also ein Superschlüssel, aber umgekehrt ist es nicht wahr.
  • Primärschlüssel – Ein Satz von Attributen, die zur eindeutigen Identifizierung jedes Tupels verwendet werden, ist ebenfalls ein Primärschlüssel.
  • Alternativschlüssel – Alternative Schlüssel sind die Kandidatenschlüssel, die nicht als Primärschlüssel ausgewählt werden.
  • Eindeutiger Schlüssel – Der eindeutige Schlüssel ähnelt dem Primärschlüssel, erlaubt jedoch einen NULL-Wert in der Spalte.
  • 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.
  • Zusammengesetzter Schlüssel – Ein zusammengesetzter Schlüssel ist eine Kombination aus zwei oder mehr Spalten, die jedes Tupel eindeutig identifizieren.

Ich hoffe, Sie haben die verschiedenen Arten von Schlüsseln in der Datenbank verstanden. Lassen Sie uns als Nächstes in diesem Artikel zum SQL-Tutorial die Einschränkungen in der Datenbank besprechen. Nun, SQL-Einschränkungen werden verwendet, um die Genauigkeit und Zuverlässigkeit von Daten zu erhöhen, die über eine Tabelle in die Datenbank gelangen.

SQL-Tutorial: Einschränkungen

SQL-Einschränkungen stellen sicher, dass es keine Verletzung in Bezug auf eine Datentransaktion gibt, wenn sie gefunden wird, wird die Aktion beendet. Der Hauptzweck der folgenden Einschränkungen besteht darin, den Datentyp einzuschränken, der in eine Tabelle aufgenommen werden kann.

  • NICHT NULL – Diese Einschränkung wird verwendet, um sicherzustellen, dass eine Spalte keinen NULL-Wert speichern kann.
  • EINZIGARTIG – Die UNIQUE-Einschränkung wird verwendet, um sicherzustellen, dass alle in einer Spalte oder Tabelle eingegebenen Werte eindeutig sind.
  • ÜBERPRÜFEN – Diese Einschränkung wird verwendet, um sicherzustellen, dass eine Spalte oder mehrere Spalten eine bestimmte Bedingung erfüllen.
  • STANDARD – Die DEFAULT-Einschränkung wird verwendet, um einen Standardwert für eine Spalte festzulegen, wenn kein Wert angegeben ist.
  • INDEX – Diese Einschränkung wird für Indizes in der Tabelle verwendet, wodurch Sie sehr schnell Daten aus der Datenbank erstellen und abrufen können.

Wenn Sie mehr über die folgenden Einschränkungen mit Syntax und Beispielen erfahren möchten, können Sie sich auf andere Artikel zu SQL beziehen. Nachdem Sie sich nun mit Schlüsseln und Einschränkungen in der Datenbank beschäftigt haben, werfen wir als Nächstes in diesem Artikel über das SQL-Tutorial einen Blick auf ein interessantes Konzept der Normalisierung.

SQL-Tutorial:Normalisierung

Normalisierung ist der Prozess der Organisation von Daten, um Duplizierung und Redundanz zu vermeiden. Es gibt viele aufeinanderfolgende Ebenen der Normalisierung, die als Normalformen bezeichnet werden . Außerdem hängt jede aufeinanderfolgende Normalform von der vorherigen ab. Die folgenden Normalformen sind vorhanden:

Um die obigen Normalformen zu verstehen, betrachten wir die folgende Tabelle:

Wenn Sie die obige Tabelle beobachten, können Sie die Datenredundanz und die Duplizierung von Daten deutlich erkennen. Also normalisieren wir diese Tabelle. Um mit der Normalisierung der Datenbanken zu beginnen, sollten Sie immer mit der niedrigsten Normalform beginnen, dh 1NF, und dann schließlich zu den höheren Normalformen übergehen.

Lassen Sie uns nun sehen, wie wir die erste Normalform für die obige Tabelle ausführen können.

Erste Normalform (1NF)

Um sicherzustellen, dass die Datenbank in 1NF sein muss , sollte jede Tabellenzelle einen einzelnen Wert haben. Daher müssen im Grunde alle Datensätze eindeutig sein . Die obige Tabelle wird wie folgt in 1NF normalisiert:

Wenn Sie in der obigen Tabelle beobachten, sind alle Datensätze eindeutig. Dennoch gibt es eine Menge Datenredundanz und Duplizierung. Um das zu vermeiden, normalisieren wir die Datenbank in die zweite Normalform.

Zweite Normalform (2NF)

Um sicherzustellen, dass die Datenbank in 2NF sein muss , sollte die Datenbank 1NF sein und sollte auch einen einspaltigen Primärschlüssel haben . Die obige Tabelle wird wie folgt in 2NF normalisiert:

Wenn Sie die obigen Tabellen betrachten, hat jede Tabelle einen einspaltigen Primärschlüssel. Es gibt jedoch eine Menge Datenredundanz und Duplizierung einiger Spalten. Um das zu vermeiden, lassen Sie uns die Datenbank in die dritte Normalform normalisieren.

Dritte Normalform (3NF)

Um sicherzustellen, dass die Datenbank in 3NF sein muss , sollte die Datenbank in 2NF vorliegen und darf keine transitiven funktionalen Abhängigkeiten haben . Die obigen Tabellen werden wie folgt in 3NF normalisiert:

Wenn Sie die obigen Tabellen beachten, hat die Datenbank keine transitiven Abhängigkeiten. Nach diesem Schritt müssen wir unsere Datenbank also nicht weiter normalisieren. Wenn Sie jedoch Anomalien oder mehr als einen einzelnen Schlüsselkandidaten sehen, können Sie mit der nächsthöheren Normalform fortfahren, d. h. BCNF.

Boyce-Codd-Normalform (BCNF)

Um sicherzustellen, dass die Datenbank in BCNF sein muss, muss die Datenbank in 3NF vorhanden sein und die Tabellen müssen weiter unterteilt werden, um sicherzustellen, dass nur ein Kandidatenschlüssel vorhanden ist.

Damit beenden wir die Normalisierung. Lassen Sie uns als Nächstes in diesem SQL-Tutorial ein wichtiges Konzept in SQL besprechen, nämlich Joins.

SQL-Tutorial:Verknüpfungen

Joins werden verwendet, um Zeilen aus zwei oder mehr Tabellen zu kombinieren, basierend auf einer verwandten Spalte zwischen diesen Tabellen und auch auf wenigen Bedingungen. Es gibt hauptsächlich vier Arten von Joins:

  • INNER JOIN: Dieser Join gibt die Datensätze zurück, die in beiden Tabellen übereinstimmende Werte haben.
  • FULL JOIN: Der FULL JOIN gibt alle Datensätze zurück, die entweder in der linken oder in der rechten Tabelle übereinstimmen.
  • LEFT JOIN: Dieser Join gibt Datensätze aus der linken Tabelle zurück, sowie diejenigen Datensätze, die die Bedingung aus der rechten Tabelle erfüllen.
  • RIGHT JOIN: Dieser Join gibt Datensätze aus der rechten Tabelle zurück, sowie diejenigen Datensätze, die die Bedingung aus der linken Tabelle erfüllen.

Das war also eine kurze Beschreibung von JOINS, aber wenn Sie eine detaillierte Beschreibung von JOINS mit einem detaillierten Beispiel wünschen, können Sie auf meinen Artikel über SQL JOINS verweisen. Lassen Sie uns als Nächstes in diesem SQL-Tutorial das letzte Konzept für diesen Artikel besprechen, d. h. Ansichten.

SQL-Tutorial:Ansichten

Eine Ansicht in SQL ist eine einzelne Tabelle, die von anderen Tabellen abgeleitet ist. Eine Ansicht enthält Zeilen und Spalten ähnlich einer echten Tabelle und enthält Felder aus einer oder mehreren Tabellen. Siehe folgendes Bild:

Um zu verstehen, wie eine Ansicht erstellt und gelöscht wird, können Sie sich auf die oben erwähnten CREATE- und DROP-Anweisungen beziehen. Damit beenden wir diesen Artikel zum SQL-Tutorial. Ich hoffe, Sie fanden diesen Artikel informativ. Wenn Sie sich auf Vorstellungsgespräche als Datenbankadministrator vorbereiten und nach einer umfassenden Liste von Fragen suchen, können Sie auch unseren Artikel über SQL-Interviewfragen lesen.

Wenn Sie mehr über MySQL erfahren und diese relationale Open-Source-Datenbank kennenlernen möchten, dann sehen Sie sich unsere MySQL-DBA-Zertifizierungsschulung an, die eine von einem Kursleiter geleitete Live-Schulung und eine echte Schulung umfasst -lebenslange Projekterfahrung. Dieses Training wird Ihnen dabei helfen, MySQL gründlich zu verstehen und das Thema zu beherrschen.

Haben Sie eine Frage an uns? Bitte erwähnen Sie es im Kommentarbereich dieses SQLTutorials und wir werden uns bei Ihnen melden.