Skip to main content

Comment récupérer des données avec des requêtes SQL: instruction SELECT

Things Mr. Welch is No Longer Allowed to do in a RPG #1-2450 Reading Compilation (Mai 2024)

Things Mr. Welch is No Longer Allowed to do in a RPG #1-2450 Reading Compilation (Mai 2024)
Anonim

Le langage de requête structuré offre aux utilisateurs de base de données un mécanisme de récupération de données puissant et flexible: l'instruction SELECT. Dans cet article, nous allons examiner la forme générale de l'instruction SELECT et composer quelques exemples de requêtes de base de données. S'il s'agit de votre première incursion dans le monde du langage de requête structuré, vous voudrez peut-être examiner les principes fondamentaux de SQL avant de continuer. Si vous souhaitez concevoir une nouvelle base de données à partir de zéro, apprendre à créer des bases de données et des tables en SQL devrait constituer un bon point de départ.

Maintenant que vous avez approfondi vos connaissances de base, commençons notre exploration de l'instruction SELECT. Comme dans les leçons SQL précédentes, nous continuerons à utiliser des instructions conformes à la norme ANSI SQL. Vous souhaiterez peut-être consulter la documentation de votre SGBD pour déterminer s'il prend en charge des options avancées susceptibles d'améliorer l'efficacité et / ou l'efficacité de votre code SQL.

La forme générale de l'instruction SELECT

La forme générale de l'instruction SELECT apparaît ci-dessous:

SÉLECTIONNER liste_sélection DE la source OÙ conditions) PAR GROUPE expression AYANT état COMMANDÉ PAR expression

La première ligne de l'instruction indique au processeur SQL que cette commande est un SÉLECTIONNER déclaration et que nous souhaitons récupérer des informations d’une base de données. le liste_sélection nous permet de spécifier le type d'informations que nous souhaitons récupérer. le DE La clause de la deuxième ligne spécifie la ou les tables de base de données spécifiques impliquées et la Cette clause nous donne la possibilité de limiter les résultats aux enregistrements qui répondent aux critères spécifiés. conditions) .

Les trois dernières clauses représentent des fonctionnalités avancées n'entrant pas dans le cadre de cet article. Nous les explorerons dans les prochains articles SQL.

Le moyen le plus simple d'apprendre le langage SQL consiste à donner un exemple. Dans cet esprit, commençons par examiner certaines requêtes de base de données. Tout au long de cet article, nous allons utiliser la table des employés de la base de données des ressources humaines fictive de XYZ Corporation pour illustrer toutes nos requêtes.

Voici la table entière:

ID employé

Nom de famille

Prénom

Un salaire

Rapports à

1

Forgeron

John

32000

2

2

Scampi

poursuivre en justice

45000

NUL

3

Kendall

À M

29500

2

4JonesAbraham350002
5AllenFacture172504
6ReynoldsAllison195004
7JohnsonKatie210003

Récupérer une table entière

Le directeur des ressources humaines de XYZ Corporation reçoit un rapport mensuel fournissant des informations sur les salaires et les rapports pour chaque employé de la société. La génération de ce rapport est un exemple de la forme la plus simple de l'instruction SELECT. Il récupère simplement toutes les informations contenues dans une table de base de données - chaque colonne et chaque ligne. Voici la requête qui accomplira ce résultat:

SELECT *Employés

Assez simple, non? L'astérisque (*) apparaissant dans le liste_sélection est un caractère générique utilisé pour indiquer à la base de données que nous souhaitons extraire des informations de toutes les colonnes de la table des employés identifiées dans la clause FROM. Nous voulions récupérer toutes les informations de la base de données. Il n'était donc pas nécessaire d'utiliser une clause WHERE pour restreindre les lignes sélectionnées dans la table. Voici à quoi ressemblent nos résultats de requête:

ID employéNom de famillePrénomUn salaireRapports à
------------------------------------------
1ForgeronJohn320002
2Scampipoursuivre en justice45000NUL
3KendallÀ M295002
4JonesAbraham350002
5AllenFacture172504
6ReynoldsAllison195004
7JohnsonKatie210003