Das SQL-Tutorial bietet grundlegende und fortgeschrittene Konzepte von SQL. Unser SQL-Tutorial richtet sich sowohl an Anfänger als auch an Profis.
SQL (Structured Query Language) wird verwendet, um Vorgänge an den in der Datenbank gespeicherten Datensätzen durchzuführen, z. B. Datensätze zu aktualisieren, Datensätze einzufügen, Datensätze zu löschen, Datenbanktabellen, Ansichten usw. zu erstellen und zu ändern.
SQL ist kein Datenbanksystem, sondern eine Abfragesprache.
Angenommen, Sie möchten SQL-Abfragen für die in der Datenbank gespeicherten Daten durchführen. Sie müssen ein beliebiges Datenbankverwaltungssystem in Ihren Systemen installieren, zum Beispiel Oracle. MySQL , MongoDB, PostgreSQL, SQL Server, DB2 usw.
Was ist SQL?
SQL ist eine Kurzform der strukturierten Abfragesprache und wird als S-Q-L oder manchmal auch als See-Quell ausgesprochen.
Selen lernen
Diese Datenbanksprache ist hauptsächlich für die Pflege der Daten in relationalen Datenbankverwaltungssystemen konzipiert. Es handelt sich um ein spezielles Tool, das von Datenexperten für den Umgang mit strukturierten Daten (Daten, die in Form von Tabellen gespeichert sind) verwendet wird. Es ist auch für die Stream-Verarbeitung in RDSMS konzipiert.
Sie können die Datenbank einfach erstellen und bearbeiten, auf Tabellenzeilen und -spalten zugreifen und diese ändern usw. Diese Abfragesprache wurde im Jahr 1986 zum Standard von ANSI und im Jahr 1987 von ISO.
Wenn Sie einen Job im Bereich Data Science anstreben, ist dies die wichtigste Abfragesprache, die es zu lernen gilt. Große Unternehmen wie Facebook, Instagram und LinkedIn verwenden SQL zum Speichern der Daten im Backend.
Warum SQL?
Heutzutage wird SQL häufig in der Datenwissenschaft und -analyse eingesetzt. Im Folgenden sind die Gründe aufgeführt, die erklären, warum es weit verbreitet ist:
- Die grundlegende Verwendung von SQL für Datenexperten und SQL-Benutzer besteht darin, Daten in die relationale Datenbank einzufügen, zu aktualisieren und zu löschen.
- Mit SQL können Datenexperten und Benutzer Daten aus relationalen Datenbankverwaltungssystemen abrufen.
- Es hilft ihnen auch, die strukturierten Daten zu beschreiben.
- Es ermöglicht SQL-Benutzern, die Datenbank und ihre Tabellen zu erstellen, zu löschen und zu bearbeiten.
- Es hilft auch beim Erstellen der Ansicht, der gespeicherten Prozedur und der Funktionen in der relationalen Datenbank.
- Es ermöglicht Ihnen, die Daten zu definieren und die in der relationalen Datenbank gespeicherten Daten zu ändern.
- Außerdem können SQL-Benutzer Berechtigungen oder Einschränkungen für Tabellenspalten, Ansichten und gespeicherte Prozeduren festlegen.
Geschichte von SQL
„A Relational Model of Data for Large Shared Data Banks“ war ein Artikel, der vom großen Informatiker „E.F. Codd' im Jahr 1970.
Die IBM-Forscher Raymond Boyce und Donald Chamberlin entwickelten die SEQUEL (Structured English Query Language) ursprünglich, nachdem sie aus der Arbeit von E.F. Codd gelernt hatten. Beide entwickelten SQL im San Jose Research Laboratory der IBM Corporation im Jahr 1970.
Ende der 1970er Jahre entwickelte relationale Software Inc. ihr erstes eigenes SQL unter Verwendung der Konzepte von E.F. Codd, Raymond Boyce und Donald Chamberlin. Dieses SQL basierte vollständig auf RDBMS. Relational Software Inc., heute Oracle Corporation, führte im Juni 1979 Oracle V2 ein, die erste Implementierung der SQL-Sprache. Diese Oracle V2-Version läuft auf VAX-Computern.
Prozess von SQL
Wenn wir den SQL-Befehl auf einem relationalen Datenbankverwaltungssystem ausführen, findet das System automatisch die beste Routine zur Ausführung unserer Anfrage, und die SQL-Engine bestimmt, wie dieser bestimmte Befehl zu interpretieren ist.
Die Structured Query Language enthält in ihrem Prozess die folgenden vier Komponenten:
- Abfrageverteiler
- Optimierungs-Engines
- Klassische Abfrage-Engine
- SQL-Abfrage-Engine usw.
Eine klassische Abfrage-Engine ermöglicht es Datenexperten und Benutzern, Nicht-SQL-Abfragen zu verwalten. Die Architektur von SQL ist im folgenden Diagramm dargestellt:
Einige SQL-Befehle
Die SQL-Befehle helfen beim Erstellen und Verwalten der Datenbank. Nachfolgend sind die am häufigsten verwendeten SQL-Befehle aufgeführt:
- CREATE-Befehl
- UPDATE-Befehl
- DELETE-Befehl
- SELECT-Befehl
- DROP-Befehl
- INSERT-Befehl
CREATE-Befehl
Dieser Befehl hilft beim Erstellen der neuen Datenbank, der neuen Tabelle, der Tabellenansicht und anderer Objekte der Datenbank.
UPDATE-Befehl
Dieser Befehl hilft beim Aktualisieren oder Ändern der gespeicherten Daten in der Datenbank.
DELETE-Befehl
Dieser Befehl hilft beim Entfernen oder Löschen der gespeicherten Datensätze aus den Datenbanktabellen. Es löscht einzelne oder mehrere Tupel aus den Tabellen der Datenbank.
SELECT-Befehl
Dieser Befehl hilft beim Zugriff auf einzelne oder mehrere Zeilen aus einer oder mehreren Tabellen der Datenbank. Wir können diesen Befehl auch mit der WHERE-Klausel verwenden.
DROP-Befehl
Dieser Befehl hilft beim Löschen der gesamten Tabelle, Tabellenansicht und anderer Objekte aus der Datenbank.
INSERT-Befehl
Dieser Befehl hilft beim Einfügen der Daten oder Datensätze in die Datenbanktabellen. Wir können die Datensätze problemlos sowohl in einzelne als auch in mehrere Zeilen der Tabelle einfügen.
SQL vs. No-SQL
Die folgende Tabelle beschreibt die Unterschiede zwischen SQL und NoSQL, die zum Verständnis notwendig sind:
SQL | Kein SQL |
---|---|
1. SQL ist ein relationales Datenbankverwaltungssystem. | 1. Während No-SQL ein nicht relationales oder verteiltes Datenbankverwaltungssystem ist. |
2. Die in diesem Datenbanksystem verwendete Abfragesprache ist eine strukturierte Abfragesprache. | 2. Die in den No-SQL-Datenbanksystemen verwendete Abfragesprache ist eine nicht deklarative Abfragesprache. |
3. Das Schema von SQL-Datenbanken ist vordefiniert, fest und statisch. | 3. Das Schema von No-SQL-Datenbanken ist ein dynamisches Schema für unstrukturierte Daten. |
4. Diese Datenbanken sind vertikal skalierbar. | 4. Diese Datenbanken sind horizontal skalierbar. |
5. Der Datenbanktyp von SQL liegt in Form von Tabellen vor, also in Form von Zeilen und Spalten. | 5. Der Datenbanktyp von No-SQL besteht aus Dokumenten, Schlüsselwerten und Diagrammen. |
6. Es folgt dem ACID-Modell. | 6. Es folgt dem BASE-Modell. |
7. Komplexe Abfragen lassen sich einfach in der SQL-Datenbank verwalten. | 7. NoSQL-Datenbanken können komplexe Abfragen nicht verarbeiten. |
8. Diese Datenbank ist nicht die beste Wahl zum Speichern hierarchischer Daten. | 8. Während No-SQL-Datenbanken eine perfekte Option zum Speichern hierarchischer Daten sind. |
9. Alle SQL-Datenbanken erfordern eine objektrelationale Zuordnung. | 9. Viele No-SQL-Datenbanken erfordern keine objektrelationale Zuordnung. |
10. Gauges, CircleCI, Hootsuite usw. sind die Top-Unternehmen, die diese Abfragesprache verwenden. | 10. Airbnb, Uber und Kickstarter sind die Top-Unternehmen, die diese Abfragesprache verwenden. |
11. SQLite, Ms-SQL, Oracle, PostgreSQL und MySQL sind Beispiele für SQL-Datenbanksysteme. | 11. Redis, MongoDB, Hbase, BigTable, CouchDB und Cassandra sind Beispiele für NoSQL-Datenbanksysteme. |
Vorteile von SQL
SQL bietet verschiedene Vorteile, die es im Bereich der Datenwissenschaft immer beliebter machen. Es handelt sich um eine perfekte Abfragesprache, die es Datenexperten und Benutzern ermöglicht, mit der Datenbank zu kommunizieren. Im Folgenden sind die besten Vorteile oder Nutzen der strukturierten Abfragesprache aufgeführt:
1. Keine Programmierung erforderlich
SQL erfordert keine große Anzahl an Codierungszeilen zur Verwaltung der Datenbanksysteme. Mithilfe einfacher SQL-Syntaxregeln können wir problemlos auf die Datenbank zugreifen und diese verwalten. Diese einfachen Regeln machen SQL benutzerfreundlich.
2. Hochgeschwindigkeits-Abfrageverarbeitung
Mithilfe von SQL-Abfragen kann schnell und effizient auf große Datenmengen aus der Datenbank zugegriffen werden. Auch Einfügungs-, Lösch- und Aktualisierungsvorgänge für Daten werden in kürzerer Zeit durchgeführt.
3. Standardisierte Sprache
SQL folgt den seit langem etablierten Standards von ISO und ANSI, die allen Benutzern weltweit eine einheitliche Plattform bieten.
4. Portabilität
Die strukturierte Abfragesprache kann problemlos auf Desktop-Computern, Laptops, Tablets und sogar Smartphones verwendet werden. Je nach den Anforderungen des Benutzers kann es auch mit anderen Anwendungen verwendet werden.
5. Interaktive Sprache
Wir können die SQL-Sprache leicht erlernen und verstehen. Wir können diese Sprache auch für die Kommunikation mit der Datenbank verwenden, da es sich um eine einfache Abfragesprache handelt. Diese Sprache wird auch verwendet, um in wenigen Sekunden Antworten auf komplexe Fragen zu erhalten.
6. Mehr als eine Datenansicht
Die SQL-Sprache hilft auch bei der Erstellung mehrerer Ansichten der Datenbankstruktur für die verschiedenen Datenbankbenutzer.
Nachteile von SQL
Neben den Vorteilen von SQL gibt es auch einige Nachteile:
1. Kosten
Die Betriebskosten einiger SQL-Versionen sind hoch. Aus diesem Grund können einige Programmierer die Structured Query Language nicht verwenden.
2. Die Schnittstelle ist komplex
Ein weiterer großer Nachteil besteht darin, dass die Schnittstelle der strukturierten Abfragesprache schwierig ist, was es für SQL-Benutzer schwierig macht, sie zu verwenden und zu verwalten.
3. Teilweise Datenbankkontrolle
Die Geschäftsregeln sind ausgeblendet. Daher können Datenexperten und Benutzer, die diese Abfragesprache verwenden, nicht die vollständige Kontrolle über die Datenbank haben.