Instruction MySQL SELECT avec exemples

Qu’est-ce que la requête SELECT dans MySQL ?

SELECT QUERY est utilisé pour récupérer les données de la base de données MySQL. Les bases de données stockent des données pour later récupération. Le but de MySQL Select est de renvoyer à partir des tables de la base de données, une ou plusieurs lignes correspondant à un critère donné. La requête de sélection peut être utilisée dans un langage de script comme PHP, Ruby, ou vous pouvez l'exécuter via l'invite de commande.

Requête SELECT dans MySQL

Syntaxe de l'instruction SQL SELECT

C'est la commande SQL la plus fréquemment utilisée et elle a le caractère suivantwing syntaxe générale

SELECT [DISTINCT|ALL ] { * | [fieldExpression [AS newName]} FROM tableName [alias] [WHERE condition][GROUP BY fieldName(s)]  [HAVING condition] ORDER BY fieldName(s)

ICI

  • SELECT est le mot clé SQL qui permet à la base de données de savoir que vous souhaitez récupérer des données.
  • [DISTINC | TOUS] sont des mots-clés facultatifs qui peuvent être utilisés pour affiner les résultats renvoyés par l'instruction SQL SELECT. Si rien n’est spécifié, ALL est considéré comme la valeur par défaut.
  • {*| [fieldExpression [AS nouveauNom]} au moins une partie doit être spécifiée, « * » a sélectionné tous les champs du nom de table spécifié, fieldExpression effectue certains calculs sur les champs spécifiés, comme l'ajout de nombres ou la réunion de deux champs de chaîne en un seul.
  • De tableName est obligatoire et doit contenir au moins une table, plusieurs tables doivent être séparées par des virgules ou jointes à l'aide du mot-clé JOIN.
  • La condition est facultative, elle peut être utilisée pour spécifier des critères dans le jeu de résultats renvoyé par la requête.
  • PAR GROUPE est utilisé pour rassembler des enregistrements ayant les mêmes valeurs de champ.
  • AYANT La condition est utilisée pour spécifier des critères lorsque vous travaillez à l'aide du mot-clé GROUP BY.
  • COMMANDÉ PAR est utilisé pour spécifier l’ordre de tri de l’ensemble de résultats.

*

Le symbole étoile est utilisé pour sélectionner toutes les colonnes du tableau. Un exemple d'instruction SELECT simple ressemble à celui présenté ci-dessous.

SELECT * FROM `members`;

L'instruction ci-dessus sélectionne tous les champs de la table des membres. Le point-virgule est une fin d'instruction. Ce n'est pas obligatoire mais c'est considéré comme une bonne pratique de terminer vos déclarations ainsi.

Exemples pratiques

Cliquer pour télécharger la base de données myflix utilisée pour des exemples pratiques.

Vous pouvez apprendre à importer le fichier .sql dans MySQL WorkBench

Les exemples sont exécutés comme suitwing deux tables

Tableau 1: membres table

numéro de membre noms complets le sexe date de naissance adresse physique adresse postale numéro de contact email
1 Janet Jones Femme 21-07-1980 Terrain de la première rue n° 4 Sac privé 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Femme 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Homme 12-07-1989 3e rue 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Femme 14-02-1984 2e rue 23 NULL NULL NULL

Tableau 2: films table

id_film titre Directeur année_sortie id_catégorie
1 Pirates des Caraïbes 4 Rob Marshall 2011 1
2 Oublier Sarah Marshal Nicolas Stoller 2008 2
3 X Men NULL 2008 NULL
4 Nom de code Noir Edgar Jimz 2010 NULL
5 Les petites filles à papa NULL 2007 8
6 anges et démons NULL 2007 6
7 Le code de De Vinci NULL 2007 6
9 Les lunes de miel Jean Schultz 2005 8
16 67% Coupable NULL 2012 NULL

Obtenir la liste des membres

Supposons que nous souhaitions obtenir une liste de tous les membres de bibliothèque enregistrés à partir de notre base de données, nous utiliserions le script ci-dessous pour ce faire.

SELECT * FROM `members`;

L'exécution du script ci-dessus dans MySQL Workbench produit le résultat suivantwing résultats.

numéro de membre noms complets le sexe date de naissance adresse physique adresse postale numéro de contact email
1 Janet Jones Femme 21-07-1980 Terrain de la première rue n° 4 Sac privé 0759 253 542 janetjones@yagoo.cm
2 Janet Smith Jones Femme 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Homme 12-07-1989 3e rue 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Femme 14-02-1984 2e rue 23 NULL NULL NULL

Notre requête ci-dessus a renvoyé toutes les lignes et colonnes de la table des membres.

Disons que nous souhaitons uniquement obtenir les noms complets, le sexe, l'adresse physique et l'e-mail.mail champs uniquement. Le suiviwing le script nous aiderait à y parvenir.

SELECT `full_names`,`gender`,`physical_address`, `email` FROM `members`;

L'exécution du script ci-dessus dans MySQL Workbench produit le résultat suivantwing résultats.

noms complets le sexe adresse physique email
Janet Jones Femme Terrain de la première rue n° 4 janetjones@yagoo.cm
Janet Smith Jones Femme Melrose 123 jj@fstreet.com
Robert Phil Homme 3e rue 34 rm@tstreet.com
Gloria Williams Femme 2e rue 23 NULL

Obtenir la liste des films

N'oubliez pas dans notre discussion ci-dessus que nous mentionnons les expressions utilisées dans les instructions SELECT. Disons que nous voulons obtenir une liste de films de notre base de données. Nous voulons avoir le titre du film et le nom du réalisateur dans un seul champ. Le nom du réalisateur du film doit figurer brackets. Nous voulons également connaître l’année de sortie du film. Le suiviwing le script nous aide à le faire.

SELECT Concat(`title`, ' (', `director`, ')') , `year_released` FROM `movies`;

ICI

  • La fonction Concat() MySQL est utilisée pour joindre les valeurs des colonnes entre elles.
  • La ligne « Concat (`title`, ' (', `director`, ')') récupère le titre, ajoute une parenthèse ouvrante suivie du nom du réalisateur puis ajoute la parenthèse fermante.

Les portions de chaîne sont séparées par des virgules dans la fonction Concat().

L'exécution du script ci-dessus dans MySQL Workbench produit le résultat suivantwing ensemble de résultats.

Concat(`titre`, ' (', `directeur`, ')') année_sortie
Pirates des Caraïbes 4 (Rob Marshall) 2011
Oublier Sarah Marshal (Nicholas Stoller) 2008
NULL 2008
Nom de code Noir (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Les lunes de miel (John Schultz) 2005
NULL 2012

Noms des champs d'alias

L'exemple ci-dessus a renvoyé le code de concaténation comme nom de champ pour nos résultats. Supposons que nous souhaitions utiliser un nom de champ plus descriptif dans notre jeu de résultats. Nous utiliserions le nom d’alias de colonne pour y parvenir. Le suiviwing est la syntaxe de base pour le nom d'alias de colonne

SELECT `column_name|value|expression` [AS] `alias_name`;

ICI

  • « SELECT `nom_colonne|valeur|expression `” est l'instruction SELECT régulière qui peut être un nom de colonne, une valeur ou une expression.
  • "[COMME]" est le mot-clé facultatif avant le nom d'alias qui désigne l'expression, la valeur ou le nom du champ qui sera renvoyé sous la forme.
  • "`nom_alias`" est le nom d'alias que nous souhaitons renvoyer dans notre jeu de résultats en tant que nom de champ.

La requête ci-dessus avec un nom de colonne plus significatif

SELECT Concat(`title`, ' (', `director`, ')') AS 'Concat', `year_released` FROM `movies`;

Nous obtenons le suiviwing résultat

Concaténer année_sortie
Pirates des Caraïbes 4 (Rob Marshall) 2011
Oublier Sarah Marshal (Nicholas Stoller) 2008
NULL 2008
Nom de code Noir (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Les lunes de miel (John Schultz) 2005
NULL 2012

Obtenir la liste des membreswing l'année de naissance

Supposons que nous voulions obtenir une liste de tous les membres affichés.wing le numéro de membre, les noms complets et l'année de naissance, nous pouvons utiliser la fonction de chaîne GAUCHE pour extraire l'année de naissance du champ date de naissance. Le script ci-dessous nous aide à le faire.

SELECT `membership_number`,`full_names`,LEFT(`date_of_birth`,4) AS `year_of_birth` FROM members;

ICI

  • "GAUCHE(`date_of_birth`,4)" le Fonction de chaîne GAUCHE accepte la date de naissance comme paramètre et ne renvoie que 4 caractères en partant de la gauche.
  • « COMME `année_de_naissance` » est nom d'alias de colonne qui sera renvoyé dans nos résultats. Noter la Le mot-clé AS est facultatif, vous pouvez le laisser de côté et la requête fonctionnera toujours.

L'exécution de la requête ci-dessus dans MySQL Workbench sur myflixdb nous donne les résultats indiqués ci-dessous.

numéro de membre noms complets année de naissance
1 Janet Jones 1980
2 Janet Smith Jones 1980
3 Robert Phil 1989
4 Gloria Williams 1984

SQL utilisant MySQL Workbench

Nous allons maintenant utiliser MySQL Workbench pour générer le script qui affichera tous les noms de champs de notre table de catégories.

1. Cliquez avec le bouton droit sur le tableau des catégories. Cliquez sur « Sélectionner les lignes – Limite de 1000  »

2. MySQL Workbench créera automatiquement une requête SQL et la collera dans l'éditeur.

3. Les résultats de la requête seront affichés

SQL utilisant MySQL Workbench

Notez que nous n'avons pas écrit l'instruction SELECT nous-mêmes. MySQL Workbench l'a généré pour nous.

Pourquoi utiliser la commande SELECT SQL quand on a MySQL Workbench ?

Maintenant, vous vous demandez peut-être pourquoi apprendre la commande SQL SELECT pour interroger les données de la base de données alors que vous pouvez simplement utiliser un outil tel que MySQL Workbench pour obtenir les mêmes résultats sans connaissance du langage SQL. Bien sûr, c'est possible, mais apprendre à utiliser la commande SELECT vous donne plus la flexibilité et Contrôle sur votre Instructions SQL SELECT.

L'atelier MySQL entre dans la catégorie "Requête par exemple» Outils QBE. Il est destiné à aider à générer des instructions SQL plus rapidement afin d'augmenter la productivité des utilisateurs.

L'apprentissage de la commande SQL SELECT peut vous permettre de créer complex requêtes qui ne peuvent pas être facilement générés à l'aide d'utilitaires Query by Sample tels que MySQL Workbench.

Pour améliorer la productivité, vous pouvez générer le code à l'aide de MySQL Workbench puis personnaliser à répondre à vos exigences. Cela ne peut se produire que si vous comprenez comment fonctionnent les instructions SQL !

Instruction MySQL SELECT avec exemples

Résumé

  • Le mot clé SQL SELECT est utilisé pour interroger les données de la base de données et c'est la commande la plus couramment utilisée.
  • La forme la plus simple a la syntaxe « SELECT * FROM tableName ; »
  • Les expressions peuvent également être utilisées dans l'instruction select . Exemple « SELECT quantité + prix FROM Sales »
  • La commande SQL SELECT peut également avoir d'autres paramètres facultatifs tels que WHERE, GROUP BY, HAVING, ORDER BY. Ils seront discutés later.
  • MySQL Workbench peut aider à développer des instructions SQL, à les exécuter et à produire le résultat dans la même fenêtre.