MySQL SELECT-Anweisung mit Beispielen
Was ist eine SELECT-Abfrage? MySQL?
SELECT QUERY wird verwendet, um die Daten von abzurufen MySQL Datenbank. Datenbanken speichern Daten für den späteren Abruf. Der Zweck von MySQL Select dient dazu, aus den Datenbanktabellen eine oder mehrere Zeilen zurückzugeben, die einem bestimmten Kriterium entsprechen. Die Auswahlabfrage kann in Skriptsprachen wie PHP oder Ruby verwendet oder über die Eingabeaufforderung ausgeführt werden.
Syntax der SQL SELECT-Anweisung
Es ist der am häufigsten verwendete SQL-Befehl und hat die folgende allgemeine Syntax
SELECT [DISTINCT|ALL ] { * | [fieldExpression [AS newName]} FROM tableName [alias] [WHERE condition][GROUP BY fieldName(s)] [HAVING condition] ORDER BY fieldName(s)
KLICKEN SIE HIER
- SELECT ist das SQL-Schlüsselwort, das der Datenbank mitteilt, dass Sie Daten abrufen möchten.
- [DEUTLICH | ALLE] sind optionale Schlüsselwörter, die zur Feinabstimmung der von der SQL-SELECT-Anweisung zurückgegebenen Ergebnisse verwendet werden können. Wenn nichts angegeben ist, wird ALL als Standard angenommen.
- {*| [fieldExpression [AS newName]} mindestens ein Teil muss angegeben werden, „*“ wählt alle Felder aus dem angegebenen Tabellennamen aus, fieldExpression führt einige Berechnungen an den angegebenen Feldern aus, wie z. B. das Addieren von Zahlen oder das Zusammenfügen zweier Zeichenfolgenfelder zu einem.
- AB tableName ist obligatorisch und muss mindestens eine Tabelle enthalten. Mehrere Tabellen müssen durch Kommas getrennt oder mit dem Schlüsselwort JOIN verbunden werden.
- WO Bedingung ist optional und kann verwendet werden, um Kriterien in der von der Abfrage zurückgegebenen Ergebnismenge anzugeben.
- GRUPPIERE NACH wird verwendet, um Datensätze zusammenzustellen, die die gleichen Feldwerte haben.
- HABEN Bedingung wird verwendet, um Kriterien anzugeben, wenn mit dem Schlüsselwort GROUP BY gearbeitet wird.
- SORTIEREN NACH wird verwendet, um die Sortierreihenfolge der Ergebnismenge anzugeben.
*
Das Sternsymbol wird verwendet, um alle Spalten in der Tabelle auszuwählen. Ein Beispiel für eine einfache SELECT-Anweisung sieht wie unten gezeigt aus.
SELECT * FROM `members`;
Die obige Anweisung wählt alle Felder aus der Mitgliedertabelle aus. Das Semikolon ist eine Anweisung zum Beenden. Es ist nicht zwingend erforderlich, wird aber als bewährte Vorgehensweise angesehen, Ihre Aussagen so zu beenden.
Praxisbeispiele
Zum Herunterladen klicken Für praktische Beispiele wird die myflix-DB verwendet.
Sie können lernen, die .sql-Datei in zu importieren MySQL Werkbank
Die Beispiele werden an den folgenden beiden Tabellen durchgeführt
Tabelle 1: Mitglieder Tabelle
Mitgliedsnummer | ganze Namen | Geschlecht | Geburtsdatum | physikalische Adresse | Anschrift | Kontaktnummer | |
---|---|---|---|---|---|---|---|
1 | Janet Jones | Weiblich | 21-07-1980 | Erstes Straßengrundstück Nr. 4 | Private Tasche | 0759 253 542 | janetjones@yagoo.cm |
2 | Janet Smith Jones | Weiblich | 23-06-1980 | Melrose 123 | NULL | NULL | jj@fstreet.com |
3 | Robert Phil | Männlich | 12-07-1989 | 3. Straße 34 | NULL | 12345 | rm@tstreet.com |
4 | Gloria Williams | Weiblich | 14-02-1984 | 2. Straße 23 | NULL | NULL | NULL |
Tabelle 2: Filme Tabelle
movie_id | Titel | Regisseur | Jahr_veröffentlicht | Kategorie ID |
---|---|---|---|---|
1 | Fluch der Karibik 4 | Rob Marshall | 2011 | 1 |
2 | Sarah Marshal vergessen | Nicholas Stoller | 2008 | 2 |
3 | X-Men | NULL | 2008 | NULL |
4 | Codename Schwarz | Edgar Jimz | 2010 | NULL |
5 | Papas kleine Mädchen | NULL | 2007 | 8 |
6 | Engel und Dämonen | NULL | 2007 | 6 |
7 | Davinci-Code | NULL | 2007 | 6 |
9 | Honey Mooner | Johann Schulz | 2005 | 8 |
16 | 67 % schuldig | NULL | 2012 | NULL |
Mitgliederliste erhalten
Nehmen wir an, wir möchten eine Liste aller registrierten Bibliotheksmitglieder aus unserer Datenbank abrufen. Dazu verwenden wir das unten gezeigte Skript.
SELECT * FROM `members`;
Ausführen des obigen Skripts in MySQL Workbench erzeugt die folgenden Ergebnisse.
Mitgliedsnummer | ganze Namen | Geschlecht | Geburtsdatum | physikalische Adresse | Anschrift | Kontaktnummer | |
---|---|---|---|---|---|---|---|
1 | Janet Jones | Weiblich | 21-07-1980 | Erstes Straßengrundstück Nr. 4 | Private Tasche | 0759 253 542 | janetjones@yagoo.cm |
2 | Janet Smith Jones | Weiblich | 23-06-1980 | Melrose 123 | NULL | NULL | jj@fstreet.com |
3 | Robert Phil | Männlich | 12-07-1989 | 3. Straße 34 | NULL | 12345 | rm@tstreet.com |
4 | Gloria Williams | Weiblich | 14-02-1984 | 2. Straße 23 | NULL | NULL | NULL |
Unsere obige Abfrage hat alle Zeilen und Spalten aus der Mitgliedertabelle zurückgegeben.
Nehmen wir an, wir möchten nur die Felder „vollständiger Name“, „Geschlecht“, „physische Adresse“ und „E-Mail“ abrufen. Das folgende Skript hilft uns dabei.
SELECT `full_names`,`gender`,`physical_address`, `email` FROM `members`;
Ausführen des obigen Skripts in MySQL Workbench erzeugt die folgenden Ergebnisse.
ganze Namen | Geschlecht | physikalische Adresse | |
---|---|---|---|
Janet Jones | Weiblich | Erstes Straßengrundstück Nr. 4 | janetjones@yagoo.cm |
Janet Smith Jones | Weiblich | Melrose 123 | jj@fstreet.com |
Robert Phil | Männlich | 3. Straße 34 | rm@tstreet.com |
Gloria Williams | Weiblich | 2. Straße 23 | NULL |
Filmliste abrufen
Denken Sie daran, dass wir in unserer obigen Diskussion Ausdrücke erwähnt haben, die in SELECT-Anweisungen verwendet wurden. Nehmen wir an, wir möchten eine Liste von Filmen aus unserer Datenbank abrufen. Wir möchten den Filmtitel und den Namen des Regisseurs in einem Feld haben. Der Name des Regisseurs sollte in Klammern stehen. Wir möchten auch das Jahr ermitteln, in dem der Film veröffentlicht wurde. Das folgende Skript hilft uns dabei.
SELECT Concat(`title`, ' (', `director`, ')') , `year_released` FROM `movies`;
KLICKEN SIE HIER
- Der Concat () MySQL Die Funktion wird verwendet, um die Spaltenwerte miteinander zu verbinden.
- Die Zeile „Concat (`title`, ' (', `director`, ')') ruft den Titel ab, fügt eine öffnende Klammer hinzu, gefolgt vom Namen des Regisseurs und fügt dann die schließende Klammer hinzu.
Zeichenfolgenteile werden in der Funktion Concat() durch Kommas getrennt.
Ausführen des obigen Skripts in MySQL Workbench erzeugt den folgenden Ergebnissatz.
Concat(`title`, ' (', `director`, ')') | Jahr_veröffentlicht |
---|---|
Fluch der Karibik 4 (Rob Marshall) | 2011 |
Sarah Marshal (Nicholas Stoller) vergessen | 2008 |
NULL | 2008 |
Codename Black (Edgar Jimz) | 2010 |
NULL | 2007 |
NULL | 2007 |
NULL | 2007 |
Honey Mooners (John Schultz) | 2005 |
NULL | 2012 |
Alias-Feldnamen
Das obige Beispiel hat den Verkettungscode als Feldnamen für unsere Ergebnisse zurückgegeben. Angenommen, wir möchten in unserem Ergebnissatz einen aussagekräftigeren Feldnamen verwenden. Dazu würden wir den Spaltenaliasnamen verwenden. Im Folgenden finden Sie die grundlegende Syntax für den Spaltenaliasnamen
SELECT `column_name|value|expression` [AS] `alias_name`;
KLICKEN SIE HIER
- „SELECT ` Spaltenname|Wert|Ausdruck `“ ist die reguläre SELECT-Anweisung, die ein Spaltenname, ein Wert oder ein Ausdruck sein kann.
- "[ALS]" ist das optionale Schlüsselwort vor dem Aliasnamen, das angibt, als welcher Ausdruck, Wert oder Feldname zurückgegeben wird.
- „`Aliasname`“ ist der Aliasname, den wir in unserer Ergebnismenge als Feldnamen zurückgeben möchten.
Die obige Abfrage mit einem aussagekräftigeren Spaltennamen
SELECT Concat(`title`, ' (', `director`, ')') AS 'Concat', `year_released` FROM `movies`;
Wir erhalten das folgende Ergebnis
Konkat | Jahr_veröffentlicht |
---|---|
Fluch der Karibik 4 (Rob Marshall) | 2011 |
Sarah Marshal (Nicholas Stoller) vergessen | 2008 |
NULL | 2008 |
Codename Black (Edgar Jimz) | 2010 |
NULL | 2007 |
NULL | 2007 |
NULL | 2007 |
Honey Mooners (John Schultz) | 2005 |
NULL | 2012 |
Abrufen einer Mitgliederliste mit Angabe des Geburtsjahres
Angenommen, wir möchten eine Liste aller Mitglieder mit Mitgliedsnummer, vollständigem Namen und Geburtsjahr erhalten. Dann können wir die Zeichenfolgenfunktion LEFT verwenden, um das Geburtsjahr aus dem Feld „Geburtsdatum“ zu extrahieren. Das unten gezeigte Skript hilft uns dabei.
SELECT `membership_number`,`full_names`,LEFT(`date_of_birth`,4) AS `year_of_birth` FROM members;
KLICKEN SIE HIER
- „LINKS(`Geburtsdatum`,4)“ LEFT-String-Funktion akzeptiert das Geburtsdatum als Parameter und gibt nur 4 Zeichen von links zurück.
- „AS `year_of_birth`“ ist das Spaltenaliasname das wird in unseren Ergebnissen zurückgegeben. Beachten Sie das Das Schlüsselwort AS ist optional, können Sie es weglassen und die Abfrage funktioniert weiterhin.
Ausführen der obigen Abfrage in MySQL Workbench gegen die myflixdb liefert uns die unten gezeigten Ergebnisse.
Mitgliedsnummer | ganze Namen | Geburtsjahr |
---|---|---|
1 | Janet Jones | 1980 |
2 | Janet Smith Jones | 1980 |
3 | Robert Phil | 1989 |
4 | Gloria Williams | 1984 |
SQL verwenden MySQL Werkbank
Wir werden es jetzt verwenden MySQL Workbench, um das Skript zu generieren, das alle Feldnamen aus unserer Kategorientabelle anzeigt.
1. Klicken Sie mit der rechten Maustaste auf die Kategorientabelle. Klicken Sie auf „Zeilen auswählen – 1000 begrenzen“
2. MySQL Workbench erstellt automatisch eine SQL-Abfrage und fügt sie in den Editor ein.
3. Die Abfrageergebnisse werden angezeigt
Beachten Sie, dass wir die SELECT-Anweisung nicht selbst geschrieben haben. MySQL Workbench hat es für uns generiert.
Warum den SQL-Befehl SELECT verwenden, wenn ja? MySQL Werkbank?
Jetzt fragen Sie sich vielleicht, warum Sie den SQL-SELECT-Befehl zum Abfragen von Daten aus der Datenbank lernen sollten, wenn Sie einfach ein Tool wie verwenden können MySQL Workbenchs, um ohne Kenntnisse der SQL-Sprache die gleichen Ergebnisse zu erzielen. Natürlich ist das möglich, aber Erlernen der Verwendung des SELECT-Befehls gibt dir mehr Flexibilität und Smartgeräte App über deine SQL SELECT-Anweisungen.
MySQL Werkbank fällt in die Kategorie „Abfrage nach Beispiel„ QBE-Tools. Es soll dazu beitragen, SQL-Anweisungen schneller zu generieren und so die Benutzerproduktivität zu steigern.
Das Erlernen des SQL-Befehls SELECT kann Ihnen das Erstellen ermöglichen komplexe Abfragen die nicht einfach mit Query-by-Example-Dienstprogrammen wie z. B. generiert werden können MySQL Werkbank.
Um die Produktivität zu verbessern, können Sie Generieren Sie den Code mit MySQL Werkbank dann anpassen es erfüllen Sie Ihre Anforderungen. Dies kann nur passieren, wenn Sie verstehen, wie die SQL-Anweisungen funktionieren!
Zusammenfassung
- Das SQL-Schlüsselwort SELECT wird zum Abfragen von Daten aus der Datenbank verwendet und ist der am häufigsten verwendete Befehl.
- Die einfachste Form hat die Syntax „SELECT * FROM tableName;“
- Ausdrücke können auch in der Select-Anweisung verwendet werden. Beispiel „Menge + Preis AUS Verkäufen auswählen“
- Der SQL-Befehl SELECT kann auch andere optionale Parameter wie WHERE, GROUP BY, HAVING, ORDER BY haben. Diese werden später besprochen.
- MySQL Workbench kann dabei helfen, SQL-Anweisungen zu entwickeln, sie auszuführen und das Ausgabeergebnis im selben Fenster zu erzeugen.