La Programmation

SQL - Guide rapide pour les débutants

30 octobre 2021

SQL implique un langage de requête structuré. Il s'agit d'un langage spécifique à un domaine utilisé pour récupérer les données stockées dans la base de données. SQL gère les données stockées dans le Système de gestion de base de données relationnelle (RDBMS), c'est-à-dire les données qui impliquent des relations entre des entités et des variables. Le langage de requête structuré est compatible avec tous les principaux systèmes d'exploitation .

Auparavant, la manipulation des données se faisait à l'aide de ISAM (méthode d'accès séquentiel indexé) et VSAM (méthode d'accès au stockage virtuel) . Le langage de requête structuré présente plus d'avantages que ISAM et VSM. En utilisant une seule commande dans SQL, vous pouvez récupérer plusieurs enregistrements ou données. Un autre avantage est qu'il ne nécessite pas de spécifier comment accéder aux données.

Table des matières

Qu'est-ce que SQL ?

SQL est un langage pour créer, manipuler et maintenir la base de données. Il permet également d'insérer les données, de les supprimer ou de les modifier. Ce langage comprend plusieurs sous-langages, comme langage de définition de données (DDL) , langage de manipulation de données (DML) , langage de requête de données (DQL) , et langage de contrôle des données (DCL) .

Un SQL se compose d'une requête de données, d'une définition de données, d'une manipulation de données et d'un contrôle d'accès aux données. Une requête de données est une commande utilisée pour récupérer des données de la base de données. La définition des données implique la définition du schéma de la base de données et la manipulation des données comprend l'insertion, la mise à jour et la suppression des données.

En 1986, SQL est devenu le Institut national américain des normes (ANSI) la norme. L'année suivante, il devient le Organisation internationale de normalisation (ISO) la norme. En 1970, Donald D. Chamberlin et Raymond F. Boyce développé SQL chez IBM.

Auparavant, il était connu sous le nom de SEQUEL (Structured English Query Language). Il a été spécialement conçu pour stocker et récupérer les données d'IBM. Il existe différentes versions de SQL publiées en 1989, 1992, 1996, 1999, 2003, 2006, 2008, 2011 et 2016.

SQL est le langage de base de tous les systèmes de gestion de bases de données relationnelles, tels que MySQL, Oracle, Sybase, SQL Server, MS Access, Postgres et Informix. L'utilisation de ce dialecte de requête présente de multiples avantages. SQL permet aux utilisateurs d'accéder aux informations à partir de n'importe quel système de gestion de bases de données relationnelles.

Les utilisateurs peuvent définir les données, les modifier ou les supprimer à l'aide de SQL. Vous pouvez également intégrer ce dialecte dans n'importe quel autre langage de programmation, où la récupération de données est requise. Il permet aux utilisateurs de générer et de définir des autorisations sur les procédures stockées, les fonctions et les vues.

Nous connaissons maintenant SQL et son histoire. Intéressons-nous maintenant au système de gestion de bases de données relationnelles (RDBMS). PL/SQL, Extension du langage procédural à SQL , aide à étendre SQL et lui fournit des capacités procédurales

Bases de données SGBDR

Nous avons vu que SQL est utilisé par de nombreuses bases de données RDBMS, comme MySQL, SQL Server, Oracle, MS Access, etc. Par conséquent, dans cette section, nous allons apprendre quelques bases de données RDBMS. Nous verrons les caractéristiques de chaque base de données, puis nous pourrons reconnaître la différence entre elles.

un. MySQL :

Une société suédoise, MySQL AB, a développé le MySQL base de données gratuite et open-source. MySQL est compatible avec tous les principaux systèmes, comme Microsoft Windows, Linux , Unix et macOS. Vous pouvez utiliser ses versions commerciales ou non commerciales. Selon les versions, les fonctionnalités vous sont fournies. Il intègre un serveur de base de données robuste, plus rapide, multi-thread et multi-utilisateurs.

En 1994, Micheal Widenius et David Axmark ont ​​développé MySQL et se prononcent dans le contexte de 'mon ess-que-ell'. Le 23 mai 1995, la première version de la base de données MySQL a été lancée. Cette base de données était compatible pour fonctionner avec le système Windows le 8 janvier 1998. Elle a d'abord été publiée pour Windows 95 et NT.

le MySQL version 3.23 : beta est sortie entre juin 2000 et janvier 2001. La version suivante, 4.0 : beta, a été lancée entre août 2002 et mars 2003. De juin 2004 à octobre 2004, la version 4.1 : beta est sortie. La version suivante, 5.1 : beta, a été produite de mars 2005 à octobre 2005. Plus tard en 2008, MySQL a été racheté par Sun Microsystems, puis la dernière version 5.2 : beta a été lancée.

Caractéristiques:

MySQL offre des performances élevées, une haute disponibilité et une flexibilité pour exécuter n'importe quoi. Il prend également en charge des transactions puissantes à effectuer. Toutes les données de la base de données MySQL sont protégées et hautement sécurisées. Il est disponible gratuitement et open-source.

deux. Oracle:

Oracle est l'une des bases de données relationnelles largement utilisées ayant des systèmes de gestion multi-utilisateurs et volumineux. Oracle Corporation a lancé la base de données relationnelle Oracle. Ce SGBD est le mieux adapté aux opérations client/serveur. Plusieurs clients peuvent accéder et envoyer des données sur le réseau. Oracle est compatible avec les systèmes client et serveur, comme UNIX, UnixWare, OS/2, NetWare et MSDOS.

Larry Ellison, Ed Oates et Bob Miner ont développé la base de données Oracle en 1977 et créé des laboratoires de développement de logiciels. En 1979, la version 2.0 d'Oracle est sortie dans les deux années suivantes, la première version commerciale d'Oracle. Ils ont changé le nom de Software Development Laboratories en Relational Software Inc. (RSI). Cette organisation a ensuite été nommée Oracle Corporation en 1982. La version suivante, 3.0, a été lancée en 1983 en langage C. La version 4.0 d'Oracle, développée en 1984, comprend des fonctionnalités plus avancées, telles que la cohérence de lecture multi-versions, le contrôle de la concurrence, etc. Oracle 11g, la dernière version, a été lancée en 2007.

La base de données relationnelle Oracle implique des fonctionnalités plus avancées, telles que la concurrence, le mécanisme de verrouillage, SQL Plus, le gestionnaire de ressources, l'exploration de données, le partitionnement, l'entreposage de données, l'exécution parallèle, etc.

3. Serveur MS SQL :

La base de données relationnelle de Microsoft est Serveur MS SQL . L'objectif principal de cette base de données est de stocker et de récupérer les données dans la base de données. Il est compatible avec Microsoft Windows, Linux et Serveur Windows systèmes d'exploitation. Le serveur MS SQL permet à n'importe quelle application logicielle, présente sur le même ordinateur ou sur un autre ou à travers le réseau, de récupérer les données. Il utilise les langages de base de données ANSI SQL et T-SQL.

Initialement, en 1987, SQL Server a été développé pour les systèmes UNIX par Sybase. L'année suivante, Microsoft, Aston-Tate et Sybase ont publié SQL Server 1.0 pour OS/2. Pour les utilisateurs de Windows 3.0, la version 1.1 de SQL Server a été lancée en 1990. Plus tard, Aston-Tate a quitté l'organisation et Micorosft a publié SQL Server 2000 en 2000. L'année suivante, XML pour cette base de données a été développé. SQLXML 2.0 développé en 2002 et publié ultérieurement SQLXML 3.0. La dernière version, SQL Server 2005, a été développée le 7 novembre 2005.

MS SQL Server propose la mise en miroir de bases de données, des déclencheurs DDL, une intégration XML transparente, une messagerie de base de données, des performances élevées et une haute disponibilité.

Quatre. MS Access :

Une autre base de données relationnelle populaire est MS Access. Comme la base de données ci-dessus, MS Access est également le produit de Microsoft. Ce SGBD est utilisé pour les petites entreprises et est exceptionnellement peu coûteux. Il intègre un moteur de base de données Jet. Ce moteur est également appelé Jet SQL, car il utilise le langage SQL.

En 1992, la première version 1.0 de MS Access a été développée. L'année suivante, il a évolué avec le langage de programmation Access Basic pour améliorer la compatibilité. Plus tard, Access 2007 a été lancé, qui utilisait le format ACCDB. Cette version de MS Access est avancée et comprend des types de données complexes et des champs à valeurs multiples.

MS Access utilise des macros pour les tables, formulaires, rapports et requêtes connectés. En utilisant ce système, vous pouvez exporter et importer vos données dans plusieurs formats, comme ASCII, Oracle, ODBC, SQL Server, etc. Le format Jet contient l'application et ses données dans un seul fichier. Par conséquent, le partage de n'importe quelle application se fait sans effort. Il ne prend pas en charge les déclencheurs de base de données, les procédures stockées et la journalisation des transactions, car il s'agit d'un système basé sur un serveur de fichiers.

Qu'est-ce que le SGBDR ?

Presque tous les systèmes de bases de données actuels, tels que SQL, Oracle, MySQL, Microsoft Access, etc., utilisent le système de gestion de bases de données relationnelles. Ce système de base de données est basé sur le modèle relationnel. E. F. Codd a proposé le système de gestion de base de données relationnelle. Il y a certains éléments dans RDBMS que vous devez connaître avant de passer à SQL. Laissez-nous discuter de chaque aspect ci-dessous.

un. Tableau:

Dans RDBMS, les données sont stockées sous la forme d'un tableau. Cette table est appelée objet. On l'appelle aussi un relation . Une table dans RDBMS a des lignes et des colonnes. Chaque table du SGBDR a un nom de table spécifique. Une table est considérée comme la forme de stockage de données la plus simple.

Considérons la table portant le nom de la table, 'Étudiant'. Nous stockerons les informations sur l'étudiant dans la table Étudiant, telles que Nom, Âge, Student_ID et Ville.

NomÂgeCarte d'étudiantVille
Steve231092New York
Olivier241093Les anges
robertvingt-et-un1094Chicago
Marie251095Californie
Jenifer231096New York
James221097Washington DC
Jeanvingt-et-un1098Californie
Johnny241099Chicago

Le tableau ci-dessus fournit des informations sur les étudiants.

deux. Domaine:

L'élément suivant du SGBDR est le champ. Un champ est la plus petite entité de la table. Par exemple, dans le tableau ci-dessus, 'Étudiant', Nom, Âge, Student_ID et Ville sont des champs. Par conséquent, chaque colonne de la table est un champ qui stocke l'information ou l'enregistrement particulier.

3. Ligne:

Une ligne est également appelée enregistrement. L'enregistrement ou la ligne contient des informations sur l'entité particulière. Dans le tableau ci-dessus, 'Étudiant', il y a huit lignes ou enregistrements différents. En d'autres termes, le tableau ci-dessus contient les données de huit étudiants différents. Une seule entité horizontale est une ligne ou un enregistrement. Voici une ligne ou un enregistrement de la table 'Étudiant'.

|__+_|

Quatre. Colonne:

Nous avons vu qu'une ligne est une entité horizontale. Contrairement à la ligne, la colonne est une entité verticale. Une colonne contient toutes les données relatives au champ. Dans la table 'Étudiant', Nom, Âge, Student_ID et Ville sont des champs. Par conséquent, une colonne avec le champ 'Nom' contient les noms des étudiants. Cette colonne est représentée comme suit :

|__+_|

5. NUL:

Lorsqu'il n'y a pas de données dans un champ particulier ou qu'il y a un espace vide dans le champ, cette valeur est la valeur NULL. La valeur NULL n'est pas la même que le zéro. Il est laissé vide lors de la création de l'enregistrement.

Bases SQL

Nous apprendrons toutes les bases de SQL dans ce segment, comme la syntaxe, le traitement des requêtes, les contraintes, les commandes et la normalisation de la base de données.

Syntaxe SQL

Une requête SQL contient plusieurs éléments permettant de récupérer les données de la base de données. Vous trouverez ci-dessous les composants impliqués dans la requête.

    Clauses :

Les clauses sont la partie facultative de la requête. Ce sont les éléments de la requête. Par exemple, UPDATE, SET, WHERE, etc., sont les clauses.

    Expressions:

Les expressions de la requête génèrent les données sous la forme d'un tableau comportant des lignes et des colonnes. Une ligne est appelée 'tuple' et une colonne est appelée 'attribut'.

    Prédicats :

Les prédicats sont des conditions qui produisent une logique à trois valeurs (vrai/faux/inconnu).

    Requêtes :

Les requêtes extraient les données requises de la base de données à l'aide de conditions.

    Déclarations :

Les instructions contrôlent le déroulement du programme, les transactions, les connexions, etc. Il peut également s'agir d'un point-virgule ;.

    Espaces non significatifs :

Les espaces blancs indésirables ne sont pas pris en compte dans la requête SQL, ce qui la rend plus compréhensible et lisible.

Ici, nous verrons de petits exemples utilisant trois clauses, update, set et where.

  1. MISE À JOUR âge ;

La requête ci-dessus met à jour l'attribut age.

  1. SET âge = âge+2 ;

Ce qui précède implique une expression 'âge + 2', qui augmente l'âge de deux, et le résultat est attribué à l'âge.

  1. WHERE emp_name = 'John' ;

Ici, ‘emp_name = ‘John’ est un prédicat et ‘John’ est une expression.

Traitement des requêtes

Les requêtes en SQL sont traitées pour les convertir en expressions de bas niveau, compréhensibles par les ordinateurs. Tout traitement de requête comprend plusieurs composants, comme un analyseur, un traducteur, un moteur d'évolution, une base de données, etc. La requête de haut niveau est transformée en expressions compatibles avec le niveau physique du système de fichiers. Ci-dessous, le diagramme illustrant comment la requête est traitée et optimisée pour l'implémenter au niveau physique.

image 617dd1be21877

Premièrement, la requête de haut niveau est convertie en une expression compréhensible, c'est-à-dire une expression algébrique. Lors de cette conversion, la requête passe par plusieurs phases, comme le montre le schéma ci-dessus. Lors de la première étape, l'analyseur vérifie la syntaxe de la requête et observe si la relation et les attributs impliqués sont corrects. Le traducteur transforme la requête en une représentation interne, qui est donnée à l'optimiseur.

L'optimiseur de requête convertit la représentation interne de la requête en expressions, qui peuvent être exécutées. Ces expressions sont ensuite exécutées par le moteur du SGBD ou le moteur d'évaluation des requêtes. Le résultat du moteur SGBD est donné au niveau physique de la base de données.

Clause SQL

La clause dans le SQL est un composant de la requête. Il existe plusieurs clauses en SQL. Voyons chaque clause en détail avec la syntaxe ci-dessous.

    Clause SELECT :

Lorsque vous souhaitez récupérer les données des colonnes ou des lignes spécifiées, vous pouvez utiliser la clause SELECT. Il peut également récupérer les données des lignes de plusieurs tables ou vues. Le jeu de résultats de l'instruction select est également une table.

Syntaxe:

|__+_|
    Clause DISTINCTE :

La clause DISTINCT est utilisée avec la clause SELECT. Il renvoie des valeurs uniques et différentes. Aucune valeur en double n'est présente dans le jeu de résultats.

Syntaxe:

|__+_|
    Clause WHERE :

La clause Where permet de spécifier la condition de récupération des données. Il affiche les seules lignes spécifiées par la condition.

Syntaxe:

|__+_|
    Clause GROUP BY :

Cette clause regroupe les lignes qui ont des valeurs similaires dans un seul jeu de résultats. La clause GROUP BY est toujours utilisée dans une requête avec des fonctions telles que SUM, MAX, MIN, COUNT et AVG.

Syntaxe:

|__+_|
    COMMANDÉ PAR:

Lorsqu'il est nécessaire de trier le résultat par ordre croissant ou décroissant, vous pouvez utiliser l'instruction ORDER BY. Par défaut, cette instruction trie le résultat par ordre croissant. Si vous souhaitez organiser le jeu de résultats par ordre décroissant, vous pouvez spécifier « desc » dans la requête.

Syntaxe:

|__+_|
    AYANT:

L'objectif principal du mot-clé HAVING est qu'il est utilisé uniquement avec des fonctions d'agrégation, telles que SUM, MIN, MAX, COUNT et AVG. Le mot clé WHERE n'est pas compatible avec les fonctions d'agrégation.

Syntaxe:

|__+_|

Commandes en SQL

Les commandes SQL sont classées en cinq types différents, DDL, DML, DQL, TCL et DCL. Nous connaîtrons chacun de ces trois types en détail ci-dessous.

    DDL :

Le langage de définition de données se compose de quatre commandes SQL, créer, modifier, tronquer et supprimer. Ces commandes sont utilisées pour modifier la structure de la table. Ils sont tous validés automatiquement, c'est-à-dire que les modifications apportées à la structure de la table sont enregistrées de manière permanente.

L'instruction create table est utilisée pour créer la nouvelle table, la vue de la table ou tout autre objet dans la base de données.

Syntaxe:

|__+_|

Exemple:

|__+_|

Une autre commande, alter, est utilisée pour modifier ou apporter des changements dans une vue ou une table existante. À l'aide de la commande alter, vous pouvez ajouter une nouvelle colonne à la table ou modifier la colonne existante d'une table particulière.

Syntaxe:

|__+_|

Exemple:

|__+_|

La commande tronquer DDL supprime toutes les lignes de la table. Notez que cela ne supprime pas la table.

Syntaxe:

|__+_|

Exemple:

|__+_|

Enfin, la commande drop supprime la table ou la vue. Il supprime complètement la structure de la table et les données stockées dans la table.

Syntaxe:

|__+_|

Exemple:

|__+_|
    LMD :

Le langage de manipulation de données comprend trois commandes, insérer, supprimer et mettre à jour. Ces commandes modifient les données de la table. Contrairement aux commandes DDL, les commandes DML ne sont pas validées automatiquement. Lorsque vous utilisez l'une des trois commandes, vous devez utiliser le mot-clé 'commit' pour enregistrer les modifications de manière permanente.

La commande INSERT insère les données dans la table. Chaque fois que de nouvelles données sont ajoutées à la table, le nombre de tuples augmente.

Syntaxe:

|__+_|

Ou

|__+_|

Exemple:

|__+_|

Vient ensuite la déclaration de mise à jour. Cette instruction met à jour ou modifie la valeur existante d'un seul attribut.

Syntaxe:

|__+_|

Exemple:

|__+_|

Enfin, l'instruction delete supprime des lignes spécifiques de la table.

Syntaxe:

|__+_|

Exemple:

|__+_|
    CDL :

Dans le SQL, nous attribuons certaines autorités ou droits à des personnes pour manipuler, accéder ou supprimer les données de la base de données. Nous pouvons accorder et retirer les autorisations à l'aide des commandes GRANT et REVOKE.

L'instruction GRANT est utilisée pour accorder le droit d'accéder à la base de données. Les utilisateurs peuvent accéder à la base de données s'ils en ont l'autorisation.

Syntaxe:

|__+_|

L'instruction REVOKE est opposée à l'instruction GRANT. Il enlève tous les privilèges de l'utilisateur pour accéder à la base de données .

|__+_|
    DQL :

Il n'y a qu'une seule commande dans le langage de requête de données, SELECT. Cette commande est utilisée pour sélectionner des attributs spécifiques dans le tableau. Il sélectionne les attributs en fonction de la condition WHERE spécifiée.

Syntaxe:

|__+_|

Exemple:

|__+_|
    CCT :

Le langage de contrôle des transactions implique trois commandes, commit, rollback et savepoint. Vous pouvez utiliser les instructions TCL uniquement avec les commandes DML. Ils ne peuvent pas être utilisés avec des instructions DDL, car ils enregistrent automatiquement les modifications de manière permanente dans la base de données.

L'instruction commit enregistre toutes les modifications apportées de manière permanente à la table dans la base de données.

Syntaxe:

|__+_|

Exemple:

|__+_|

Lorsque vous souhaitez annuler une transaction précédente qui n'est pas validée dans la base de données, l'instruction de restauration peut être exécutée.

Syntaxe:

|__+_|

Exemple:

|__+_|

Enfin, l'instruction SAVEPOINT effectue une annulation efficace des transactions. Il annule la transaction spécifique jusqu'au point souhaité, sans avoir besoin de l'intégralité de la transaction pour l'annuler.

Syntaxe:

|__+_|

Intégrité des données

L'intégrité des données dans la base de données implique l'exactitude et la redondance. Les données présentes dans la base de données doivent être exactes et non répétées. À ces fins, nous utilisons des contraintes. Généralement, la contrainte signifie des limitations ou des restrictions. En SQL, la contrainte implique des réglementations ou des règles sur les colonnes de la table. En d'autres termes, les contraintes spécifient quelles données doivent être ajoutées à la table. L'application de contraintes à la colonne de données garantit la fiabilité et l'exactitude des données.

SQL

Le diagramme ci-dessus illustre différentes contraintes regroupées en trois catégories, l'intégrité de l'entité, l'intégrité référentielle et l'intégrité du domaine.

Vous pouvez appliquer des contraintes aux colonnes du tableau ou directement au tableau. Si vous préférez appliquer des contraintes aux colonnes, il s'agit de contraintes au niveau des colonnes. Vous pouvez appliquer des contraintes au niveau des colonnes à une ou deux colonnes. Et l'utilisation de contraintes sur l'ensemble de la table s'appelle des contraintes au niveau de la table. Lorsque vous appliquez des contraintes au niveau de la table, elles sont appliquées à toutes les colonnes de la table.

Faites-nous maintenant connaître les trois catégories d'intégrité des données ci-dessus.

    Intégrité de l'entité :

Dans l'intégrité de l'entité, chaque tuple de la table est identifié de manière unique à l'aide des trois contraintes ci-dessous :

  • Contrainte NOT NULL : elle garantit qu'il n'y a pas de valeur NULL dans la table ou la colonne.
  • Contrainte UNIQUE : cette règle spécifie que la colonne de la table aura des valeurs uniques. Aucune valeur de la colonne ne sera répétée.
  • Clé PRIMARY : lorsque vous appliquez cette contrainte à n'importe quelle colonne de la table, cette colonne identifiera de manière unique chaque ligne ou tuple de la table.
    Intégrité référentielle :

Lorsque vous souhaitez relier deux tables différentes dans la base de données, vous pouvez utiliser l'intégrité référentielle.

  • Clé FOREIGN : elle identifiera de manière unique une ligne ou un tuple d'une autre table. La clé primaire d'une table doit être présente en tant qu'attribut dans l'autre table. Un tel attribut est appelé FOREIGN Key.
    Intégrité du domaine :

L'intégrité du domaine est utilisée pour s'assurer que toutes les valeurs de la table suivent les règles définies.

  • Contrainte DEFAULT : elle attribue la valeur par défaut à la colonne lorsque la valeur spécifique n'est pas indiquée.
  • CHECK Constraints : lorsque vous souhaitez vérifier que toutes les valeurs de colonne satisfont à la condition spécifiée, vous pouvez appliquer la contrainte CHECK.

INDEX : Lorsque vous souhaitez récupérer ou créer les données de la base de données, vous pouvez utiliser l'INDEX.

Normalisation de la base de données

La normalisation de la base de données est le processus d'organisation des données dans la base de données dans un format bien structuré. Il existe différentes formes normales dans normalisation de la base de données , ce qui permet d'éliminer la redondance et d'améliorer l'intégrité des données. E. F. Codd a proposé le concept de normalisation de la base de données. Il existe deux raisons principales pour la normalisation de la base de données.

  • Suppression des données répétées de la base de données.
  • S'assurer que toutes les dépendances de données sont correctes et logiques.

La suppression des données redondantes aidera à libérer de l'espace disque. En utilisant la normalisation de la base de données, vous pouvez créer une bonne base de données et y stocker les données de manière logique. Il existe différentes formes normales de normalisation de base de données, qui vous aident à créer une base de données bien structurée. Ces formes normales sont données ci-dessous :

  • Première forme normale
  • Deuxième forme normale
  • Troisième forme normale
  • Forme normale de Boyce Codd
  • Quatrième forme normale
  • Cinquième forme normale

Types de données SQL

Le type de données SQL définit le type de données utilisé. Il existe six différents types de types de données dans SQL : numérique, date et heure, caractère et chaîne, caractère Unicode, binaire et divers. Ces types de données sont utilisés lors de la création de la table dans la base de données. Chaque colonne est affectée au type de données et ne doit contenir que les données du type spécifié.

Toutes les bases de données relationnelles ne prennent pas en charge tous les types de données SQL. La base de données relationnelle Oracle ne prend pas en charge le type de données DATETIME et la base de données MySQL ne prend pas en charge le type de données CLOB. Il existe certaines bases de données spécifiques, qui ont des types de données distincts supplémentaires. Dans Microsoft SQL Server, les autres types de données sont «money» et «smallmoney». Voyons maintenant chaque type de données ci-dessous.

un. Type de données numériques

Il existe onze types de données numériques différents dans SQL, qui sont classés en deux groupes. Le premier groupe contient des types de données numériques exacts et le second des types de données numériques approximatifs. Les types de données numériques exacts incluent bigint, int, smallint, tinyint, decimal, money, numeric, smallmoney et bit. Et les types de données numériques approximatifs impliquent float et real. Les tableaux ci-dessous illustrent les valeurs de plage des types de données exacts et approximatifs.

Types de données exacts

Type de données À partir de À Stockage
bit0un
bigint-9 223 372 036 854 775 8089 223 372 036 854 775 8078 octets
minuscule02551 octet
petit argent-214 748,3648+214.748.36474 octets
de l'argent-922 337 203 685 477,5808+922 337 203 685 477.58078 octets
petit entier-32 76832 7672 octets
entier-2 147 483 6482 147 483 6474 octets
numérique-10^38 +110^38-15 – 17 octets
décimal-10^38 +110^38-15 – 17 octets

Types de données approximatifs

Type de données À partir de À Stockage
réel-3.40E + 383.40E + 384 ou 8 octets
flotter-1.79E + 3081.79E + 3084 octets

deux. Date et l'heure

Le type de données date et heure a quatre types de données différents, datetime, date, time et smalldatetime. Connaissez maintenant les valeurs de plage de chaque type de données de date et d'heure.

Type de données À partir de À Stockage
petite date et heure1er janvier 19006 juin 20794 octets
date-heure1 janvier 175331 décembre 99998 octets
dateheure21 janvier 000131 décembre 99996 à 8 octets
DateCe type de données stocke la date sous la forme du 30 juin 1991.3 octets
tempsCe type de données stocke l'heure sous la forme 12:30 P.M.3 à 5 octets

3. Caractère et chaîne

Le type de données Caractère et Chaîne est utilisé pour insérer des alphabets et des mots. Il existe quatre types de données Character et String distincts, comme suit :

    carboniser

Le type de données char est de longueur fixe et a une limite de taille maximale de 8 000 caractères.

    varchar

Ce type de données est de longueur variable, avec une limite de taille maximale de 8 000 caractères.

    texte

Le type de données texte a une longueur variable et une limite de taille maximale est de 2 147 483 647 caractères.

    varchar(max)

Ce type de données est également de longueur variable, avec une limite de taille maximale de 2E + 31.

Tous les types de données ci-dessus ne sont pas Unicode.

Quatre. Binaire:

Il existe quatre types de données binaires dans SQL : binary, varbinary, varbinary(max) et image. Vous trouverez ci-dessous une brève description de chacun de ces types de données.

    binaire

Ce type de données est de longueur fixe, avec une limite de longueur maximale de 8 000 octets.

    varbinaire

varbinary est un autre type de données binaires, qui a une longueur variable. Sa taille maximale est de 8 000 octets.

    varbinaire (max)

Comme varbinary, varbinary(max) est également un type de données de longueur variable, ayant une limite de taille maximale de 2E + 31 octets. Il est utilisé uniquement dans SQL Server 2005.

    image

image est également une donnée binaire de longueur variable avec une limite maximale de 2 147 483 647 octets.

5. Type de données Unicode

Ce groupe comporte également quatre types de données distincts : nchar, nvarchar, nvarchar(max) et ntext.

    nchar

nchar est un type de données Unicode de longueur fixe, d'une longueur maximale de 4 000 octets.

    nvarchar

Contrairement à nchar, nvarchar est un Unicode de longueur variable avec une limite de taille maximale de 4 000 octets.

    nvarchar(max)

nvarchar(max) est compatible uniquement avec la base de données SQL Server 2005. Il a une limite de taille maximale de 2E + 31 et a une longueur variable.

    ntexte

ntext est un Unicode de longueur variable avec une longueur maximale de 1 073 741 823 octets.

6. Divers

Voici les types de données qui relèvent du groupe divers.

    variante_sql: Il contient les valeurs de tous les types de données pris en charge par la base de données SQL Server, à l'exception de timestamp, text et ntext.identifiant unique: Ce type de données contient un GUID, un identifiant global unique.le curseur: Il fait référence à un objet curseur.horodatage: Il s'agit d'un numéro unique qui est modifié chaque fois qu'une ligne de la base de données est modifiée.XML: Il est pris en charge par SQL Server 2005 et contient des données xml.tableau: Il contient un ensemble de résultats, qui est utilisé à des fins futures.

Opérateurs SQL

Les opérateurs sont les mots ou caractères réservés. Ils sont destinés à effectuer des opérations spécifiques. Généralement, un opérateur est utilisé dans la clause WHERE pour spécifier la condition. Un opérateur peut être arithmétique, logique ou comparatif. Vous pouvez également utiliser un opérateur pour combiner deux conditions dans la même instruction. En SQL, il existe trois types d'opérateurs différents : les opérateurs arithmétiques, de comparaison et logiques.

un. Opérateurs arithmétiques

Un opérateur arithmétique peut effectuer des opérations arithmétiques, telles que l'addition, la soustraction, la multiplication, le module et la division. Prenons 'a, ayant la valeur 15' comme une variable et 'b, ayant la valeur 30' comme une autre variable. Nous verrons un exemple de chaque opérateur arithmétique ci-dessous.

Opérateur La description Exemple
+L'opérateur '+' effectue l'addition des deux variables.a+b=15+30=45
L'opérateur '-' soustrait la variable de droite de la variable de gauche.a-b =15-30=-15
%'%' produit le reste de son résultat lorsque la variable de gauche est divisée par la variable de droite.b/a=30%15=0
/‘/’ effectue la division. La valeur de la variable de gauche est divisée par la valeur de la variable de droite.b/a =30/15=2
*‘*’ multiplie deux variables.a*b=15*30=450

deux. Opérateurs logiques

Ici, nous verrons tous les opérateurs logiques utilisés en SQL avec leurs brèves descriptions.

  • AND : AND est utilisé pour combiner plusieurs conditions dans une instruction SQL.
  • BETWEEN : Cet opérateur est utilisé pour spécifier la plage de valeurs. Vous pouvez définir la valeur minimale et maximale à l'aide du mot-clé BETWEEN.
  • IN : Lorsque vous appliquez le mot clé IN, il compare une seule valeur à toutes les autres valeurs littérales présentes dans une liste spécifiée.
  • NOT : cet opérateur est utilisé avec d'autres opérateurs logiques, tels que EXISTS, BETWEEN. Par exemple, vous pouvez appliquer NOT EXISTS, NOT BETWEEN, NOT IN, etc.
  • IS NULL : Lorsque vous souhaitez comparer une valeur avec la valeur NULL, vous pouvez utiliser IS NULL.
  • ALL : cet opérateur est utilisé pour comparer une valeur d'un ensemble avec toutes les autres valeurs d'un autre ensemble.
  • ANY : Il compare une valeur avec n'importe quelle valeur pratique dans la liste.
  • EXISTS : il vérifie si une ligne particulière est présente dans la table.
  • LIKE : Lorsque vous souhaitez comparer une valeur avec une valeur similaire, utilisez le mot-clé LIKE.
  • OR : comme AND, OR combine également plusieurs conditions dans la clause WHERE.
  • UNIQUE : ce mot-clé vérifie l'unicité de chaque ligne de la table.

3. Opérateurs de comparaison

Pour reconnaître les opérateurs de comparaison, nous prendrons deux variables, a et b. Soit ‘a’ égal à 15 ‘b’ égal à 20.

Opérateur La description Exemple
Il vérifie si les valeurs des deux variables sont égales ou non. S'ils ne sont pas égaux, il renvoie vrai, sinon pas vrai.(ab) =(1530)=vrai
==Comme , == vérifie également les deux variables pour des valeurs égales. Si les valeurs sont égales, elle renvoie true.(a==b)=(15==30)=pas vrai
!='!=' est similaire à '.' Il produit également vrai si les valeurs des deux variables ne sont pas égales.(ab) =(1530)=vrai
>Si la valeur de la variable de gauche est supérieure à celle de la variable de droite, « > » renvoie vrai.(a>b)=(15>30)= faux
!>'!>' est l'opposé de l'opérateur '>'. Elle renvoie vrai si la valeur de la variable de gauche n'est pas supérieure à la valeur de la variable de droite.(a!>b)=(15!>30)= vrai
>=Si l'opérande gauche est supérieur ou égal à l'opérande droit, la condition devient vraie.(a=30)= pas vrai
<Si la valeur de la variable de gauche est inférieure à la valeur de la variable de droite, '<’ returns true.
!<' !<’ is opposite to the ‘<’ operator. It returns true if the left variable value is not less than the right variable value.
<=Si l'opérande gauche est inférieur ou égal à l'opérande droit, la condition devient vraie.(à<=b)=(15<=30)= true

Expressions SQL

En SQL, une expression est composée d'opérateurs, d'une ou plusieurs valeurs et de fonctions SQL. Ils sont toujours spécifiés dans la clause WHERE. Vous trouverez ci-dessous la syntaxe illustrant l'utilisation des expressions dans la requête de la base de données.

Syntaxe:

|__+_|

Il existe trois types d'expressions utilisées dans SQL, booléen, numérique et date.

un. Expressions booléennes

L'expression booléenne récupère les données qui correspondent à une valeur unique. Il récupère les lignes qui correspondent à la valeur spécifiée dans l'EXPRESSION.

Syntaxe:

|__+_|

Plus tôt, nous avons créé la table, ayant un nom de table, 'Student'. Nous allons récupérer ses données à l'aide de l'instruction SELECT.

|__+_|

Sortir:

|__+_|

Maintenant, nous allons récupérer les données qui correspondent à la valeur Student_ID = 1098. Une seule ligne sera affichée comme suit.

|__+_|

Résultat:

|__+_|

deux. Expression numérique

Les expressions numériques sont des opérations mathématiques. Il s'exprime comme suit :

Syntaxe:

|__+_|

Vous pouvez effectuer n'importe quelle opération mathématique à l'aide d'expressions numériques. Voici un exemple illustrant l'opération mathématique à l'aide d'une expression numérique.

|__+_|

Sortir:

|__+_|

Vous pouvez également inclure des fonctions d'agrégation dans une expression numérique : avg(), max(), count(), min() et sum(). Maintenant, nous allons compter le nombre d'enregistrements ou de lignes dans la table 'Student'.

|__+_|

Sortir:

|__+_|

3. Expressions de date

Les expressions de date sont l'expression la plus souhaitable dans SQL, qui fournit la date et l'heure actuelles du système. Voyons la requête pour afficher la date et l'heure actuelles du système.

|__+_|

Sortir:

|__+_|

Créer, supprimer et utiliser des instructions de base de données dans SQL

un. Créer une base de données

Avant de créer des tables, nous devons d'abord créer la base de données. Tout d'abord, créez la base de données dans laquelle vous souhaitez travailler. Nous allons maintenant voir comment créer la base de données.

Syntaxe:

|__+_|

Vous devez vous assurer que le nom de la base de données doit être unique et différent. Il ne doit pas être utilisé avant.

Créons maintenant la base de données portant le nom .

|__+_|

Pour créer une base de données, vous devez disposer du privilège d'administrateur. Vous pouvez afficher toutes les bases de données créées à l'aide de la commande 'AFFICHER LES BASES DE DONNÉES'. Nous avons déjà créé plusieurs bases de données : school_info, softwaretesttips, test, company et origin.

|__+_|

Résultat:

|__+_|

La sortie ci-dessus affiche la liste des bases de données créées.

deux. Déposer la base de données

Supposons que nous souhaitions supprimer l'une des bases de données ci-dessus. À cette fin, l'instruction 'DROP DATABASE' est utilisée.

Syntaxe:

|__+_|

Considérez que nous souhaitons supprimer la base de données 'test' du schéma SQL. Lorsque vous supprimez une base de données, toutes les données qu'elle contient seraient supprimées. Vous devez également disposer du privilège d'administrateur pour supprimer la base de données.

|__+_|

Nous avons supprimé la base de données 'test'. Regardons maintenant la liste des bases de données présentes dans le schéma.

|__+_|

Sortir:

|__+_|

3. Utiliser et sélectionner la base de données

Dans notre schéma, il y a plusieurs bases de données. Supposons que nous souhaitions travailler avec une seule base de données spécifique ; vous devez choisir celui de toutes les bases de données. Après avoir choisi une base de données, vous pouvez y effectuer toutes les opérations DDL. Pour sélectionner la base de données, il existe une instruction USE.

Syntaxe:

|__+_|

Nous sélectionnerons une base de données ‘softwaretesttips’ dans notre liste de bases de données dans laquelle nous effectuerons toutes les opérations de base de données.

|__+_|

Tout ce que vous créez, tableaux ou vues, sera présent dans la base de données « softwaretesttips ».

C'était tout le tutoriel rapide sur SQL. Nous allons maintenant créer une table dans la base de données « softwaretesttips » et effectuer toutes les opérations SQL sur cette table.

Créer un tableau

Nous avons vu la syntaxe de création de table et l'exemple. Cette déclaration s'écrit comme suit,

|__+_|

Dans l'instruction create table, nous spécifions le nom de la table, les attributs et les types de données. Nous pouvons même appliquer des contraintes sur les attributs à l'aide de l'instruction create table. Assurez-vous que le nom de la table est unique et qu'il n'a pas été utilisé auparavant.

Nous allons maintenant créer la table à l'aide de l'instruction 'create table'. Créons une table 'EMPLOYEE', qui stocke les données des employés. Nous allons créer cinq attributs pour cette table : Emp_ID, Name, Age, City et Salary.

|__+_|

Nous avons créé la table 'EMPLOYEE', avec EMP_ID, NAME, AGE, CITY et SALARY comme attributs. La clé primaire de la table 'EMPLOYEE' est EMP_ID, qui ne doit pas être NULL. De plus, les attributs NAME et AGE ne doivent pas non plus être NULL.

Après avoir écrit l'instruction de création de table ci-dessus, vous verrez le message 'table créée avec succès' à l'écran. Lorsque vous souhaitez voir les attributs de la table ou du schéma de table, tapez la commande ci-dessous :

|__+_|

Sortir:

|__+_|

Nous pouvons supprimer la table 'EMPLOYEE' en utilisant l'instruction DROP.

|__+_|


Après avoir supprimé la table, elle est supprimée de la base de données. Si vous essayez d'exécuter la commande 'DESC', cela entraînera une erreur comme suit :

|__+_|

Insérer des valeurs dans le tableau

Nous avons appris à créer une table dans une base de données particulière et à la supprimer de la base de données. Maintenant, nous allons nous concentrer sur l'insertion des données dans le tableau. Dans la première section de cet article, nous avons vu comment écrire l'instruction d'insertion. Ici, nous allons apprendre à écrire l'instruction insert en utilisant l'exemple.

Nous prendrons le tableau ci-dessus, « EMPLOYÉ », et y insérerons les données des employés à l'aide du mot-clé d'insertion. Il existe deux manières d'insérer les données dans le tableau.

|__+_|

Une autre forme la plus simple d'écriture de l'instruction INSERT est :

|__+_|

Dans le premier format, nous avons spécifié des colonnes et des valeurs. Nous n'avons spécifié que des valeurs dans le second format. Lors de l'utilisation du second format, assurez-vous d'insérer les valeurs dans le bon ordre, car vous avez spécifié les attributs lors de la création de la table.

Insérons maintenant les données des employés dans la table EMPLOYEE.

|__+_|

Nous avons inséré les données de six employés en utilisant le premier format. Insérons les données d'un employé en utilisant le deuxième format.

|__+_|

Maintenant, il y a sept enregistrements ou lignes dans la table EMPLOYEE. Pour afficher les données dans la table EMPLOYEE, l'instruction SELECT est utilisée. Concentrons-nous maintenant sur l'instruction SELECT.

Instruction SELECT

L'instruction SELECT est utilisée pour récupérer les données d'une table particulière. Lorsque nous récupérons les données à l'aide de l'instruction SELECT, elle renvoie les données au format tableau. Plus tôt, nous avons comment écrire l'instruction SELECT.

|__+_|

L'instruction ci-dessus n'affichera que la colonne1 et la colonne2 de la table spécifiée. Si vous souhaitez afficher toutes les données d'une table spécifique, '*' est utilisé au lieu de spécifier toutes les colonnes.

|__+_|

Nous allons afficher toutes les données de la table EMPLOYEE.

|__+_|

Sortir:

|__+_|

Supposons que vous souhaitiez récupérer uniquement le nom et l'ID des employés ; vous pouvez spécifier EMP_ID et NAME dans l'instruction SELECT.

|__+_|

Sortir:

|__+_|

Clause OÙ

La clause WHERE est utilisée pour définir la condition de récupération des données. Il est également utilisé pour combiner deux tables différentes. Lorsque vous appliquez la condition spécifique dans la clause WHERE, les données sont extraites uniquement si la condition est vraie. Le mot-clé WHERE est couramment utilisé lorsque les utilisateurs ont besoin d'informations spécifiques. Ce mot clé est utilisé dans les instructions DELETE et UPDATE.

|__+_|

Dans cette condition, nous pouvons utiliser des opérateurs logiques et de comparaison. Prenons la table EMPLOYEE. Récupérons maintenant tous les identifiants, noms et salaires des employés dont le salaire est supérieur ou égal à 40 000. Par conséquent, nous spécifierons la condition comme salaire >= 40 000 dans la clause WHERE.

|__+_|

Sortir:

|__+_|

Le jeu de résultats contient tous les ID, noms et salaires des employés dont le salaire est supérieur ou égal à 40 000.

Si votre condition dans l'instruction WHERE contient String, écrivez-la entre guillemets simples (' '). Récupérons le nom, l'ID et l'âge d'un employé portant le nom de Mary.

|__+_|

Sortir:

|__+_|

Opérateurs ET et OU

Les opérateurs ET et OU combinent deux ou plusieurs conditions différentes. Lorsque vous avez besoin de données précises et concises de la table, vous pouvez joindre plusieurs conditions à l'aide des opérateurs AND ou OR.

Lorsque vous combinez des conditions à l'aide de l'opérateur AND, il renvoie le résultat uniquement si toutes les conditions sont satisfaites. Il ne renverra pas les données si l'une des conditions est satisfaite. Nous savons que les opérateurs sont utilisés dans le mot-clé WHERE. Il s'écrit comme suit :

|__+_|

Vous pouvez spécifier plusieurs conditions. Prenons la table EMPLOYEE. Récupérons maintenant le nom, l'identifiant, l'âge et le salaire des employés dont l'âge est supérieur à 40 ans et dont le salaire est supérieur ou égal à 35 000.

|__+_|

Sortir:

|__+_|

Les données des employés sont récupérées lorsque les deux conditions sont remplies.

L'opérateur OU combine également deux ou plusieurs conditions. Contrairement au mot clé AND, il n'est pas nécessaire que toutes les conditions spécifiées dans le mot clé WHERE à l'aide de la clause OR soient vraies. Même si une seule condition est vraie, elle écrira les données dans le jeu de résultats. Vous pouvez spécifier plusieurs conditions à l'aide du mot-clé OR comme indiqué ci-dessous :

|__+_|

De la table EMPLOYEE, nous allons récupérer le nom, la ville et le salaire, dont la ville est la Californie ou le salaire est de 30 000.

|__+_|

Sortir:

|__+_|

L'ensemble de résultats ci-dessus contient tous les noms d'employés qui vivent en Californie ou qui perçoivent un salaire de 30 000.

Clause AYANT

Lorsque vous souhaitez filtrer votre résultat sur des données plus spécifiques, la clause HAVING est utilisée. Vous ne pouvez appliquer que des fonctions d'agrégation dans le mot-clé HAVING, qui spécifiera la condition de récupération des données. Voici la forme d'écriture du mot-clé HAVING :

|__+_|

Nous prendrons la table, ayant le nom de table, EMPLOYEE2. Le tableau est le suivant :

|__+_| |__+_|

Sortir:

|__+_|

Fonctions d'agrégation

Fonctions d'agrégation dans le gestion de base de données système prend plusieurs données à partir d'enregistrements et renvoie une valeur unique après les calculs. Il existe cinq fonctions d'agrégation différentes : sum(), avg(), count(), min() et max(). Toutes ces fonctions ne peuvent être appliquées que sur les données numériques, à l'exception de la fonction count(). Laissez-nous discuter de chaque fonction en détail ci-dessous. Nous prendrons la table EMPLOYEE pour comprendre les fonctions d'agrégat avec des exemples.

|__+_|
    Somme():La fonction sum() renvoie la somme de tous les nombres présents dans la colonne. Dans le tableau ci-dessus, nous additionnerons les salaires de tous les employés à l'aide de la fonction sum(). Il prend plusieurs données et renvoie une seule valeur.
|__+_|

Résultat:

|__+_|
    Moy() :La fonction avg() renvoie également une seule valeur. Il calcule la somme de tous les numéros de données présents dans une colonne et la divise par le nombre total de colonnes. La fonction avg() calcule la moyenne de toutes les données numériques.
|__+_|

Résultat:

|__+_|
    Max() :Lorsque vous avez besoin de trouver la valeur maximale à partir de l'ensemble de données, vous pouvez appliquer la fonction max() à une colonne particulière. Il renvoie également une valeur unique dans le jeu de résultats.
|__+_|

Sortir:

|__+_|
    Mini ():La fonction min() est opposée à celle de la fonction max(). Il renvoie la valeur minimale de la colonne particulière.
|__+_|

Sortir:

|__+_|
    Compter():Count() est utilisé pour compter le nombre d'enregistrements dans la table. Vous pouvez appliquer la fonction count() sur tous les types de données de la table. Il considère également les données NULL et en double. Si vous souhaitez supprimer les données en double, vous devez ajouter le mot-clé DISTINCT.
|__+_|

Sortir:

|__+_|

La fonction count() renvoie le nombre de types dans la table EMPLOYEE.

|__+_|

Sortir:

|__+_|

Ici, nous avons utilisé le mot-clé DISTINCT avec la fonction count() sur la colonne CITY. Il a renvoyé le décompte des noms de villes distincts. Vous pouvez également ajouter la phrase WHERE avec la fonction count().

|__+_|

Sortir:

|__+_|

Nous avons un certain nombre d'employés dont l'âge est supérieur à 40 ans.

Mettre à jour le mot clé

Vous pouvez utiliser le mot clé update si vous souhaitez modifier les données présentes dans le tableau. Avec le mot-clé update, vous pouvez également ajouter le mot-clé WHERE. À l'aide du mot-clé WHERE, vous pouvez mettre à jour uniquement les enregistrements que vous souhaitez modifier. Si vous n'ajoutez pas le mot-clé WHERE, tous les enregistrements seront mis à jour. Vous pouvez écrire la requête de mise à jour de la manière suivante :

|__+_|

Si vous devez appliquer les modifications à deux enregistrements ou plus, vous pouvez appliquer les opérateurs AND et OR. Prenez la table EMPLOYEE. Nous mettrons à jour l'âge d'un employé, ayant l'ID 405. Nous fixerons l'âge de 37 à 40 ans.

|__+_|

Lorsque vous mettez à jour l'âge d'un employé, ayant l'ID 405, ce changement sera reflété dans le tableau. Nous saurons à quoi ressemblera la table EMPLOYEE après modification.

Sortir:

|__+_|

Supposons maintenant que vous souhaitiez modifier le salaire et l'âge d'un employé ayant l'ID 407. Nous allons fixer le salaire à 55 000 et l'âge à 35 ans.

|__+_|

Sortir:

|__+_|

Le tableau ci-dessus contient les données mises à jour.

SUPPRIMER la requête

Lorsque vous souhaitez supprimer un enregistrement de la table, le mot-clé delete est utilisé. Si vous souhaitez supprimer le tuple ou la ligne spécifique, ajoutez le mot-clé WHERE pour spécifier la condition. Combinez plusieurs conditions à l'aide des opérateurs ET ou OU. Vous pouvez écrire la requête de suppression comme indiqué ci-dessous :

|__+_|

Prenons par exemple la table EMPLOYEE. Nous supprimerons l'enregistrement de l'employé ayant l'ID d'employé 405.

|__+_|

La table n'inclura pas l'enregistrement d'employé ayant l'ID d'employé 405 après l'exécution de la requête ci-dessus.

Sortir:

|__+_|

Si vous souhaitez supprimer toutes les lignes de la table, utilisez la requête ci-dessous,

|__+_|

Après l'exécution de cette requête, seules les données seront supprimées, pas le schéma de la table.

Clause ORDRE PAR

Vous pouvez classer vos données de colonne dans un ordre croissant ou décroissant à l'aide de la phrase ORDER BY. Par défaut, les données de la colonne sont organisées par ordre croissant. Suivez le format ci-dessous pour écrire la phrase ORDER BY.

|__+_|

La liste des colonnes doit contenir toutes les colonnes que vous souhaitez trier ou organiser dans l'ordre. Prenez la même table EMPLOYEE pour comprendre cette phrase avec un exemple simple. Nous allons ajouter le nom de la colonne, NAME et SALARY à la liste des colonnes.

|__+_|

Le tableau sera organisé selon les noms par ordre croissant.

Sortir:

|__+_|

Maintenant, nous allons générer la table dans l'ordre décroissant en utilisant la colonne NAME.

|__+_|

Sortir:

|__+_|

Clause GROUP BY

Pour un regroupement de données identiques, la clause GROUP BY est utilisée. Le mot clé WHERE est toujours suivi de la clause GROUP BY et la phrase GROUP BY est suivie de la clause ORDER BY. Il regroupe des données similaires dans des groupes spécifiés par la condition dans la clause WHERE. La clause GROUP BY s'écrit comme suit :

|__+_|

Nous appliquerons la phrase GROUP BY sur l'autre table. Considérez le tableau ci-dessous EMPLOYEE1.

|__+_|

Ici, Steve travaille à Chicago ainsi qu'en Californie. Par conséquent, nous pouvons regrouper les données de Steve à l'aide de la phrase GROUP BY, qui affichera son nom et son salaire global.

|__+_|

Sortir:

|__+_|

Mot-clé DISTINCT

Le mot clé DISTINCT supprime toutes les valeurs en double de la table. De nombreuses tables peuvent contenir des données redondantes ou en double. Dans de telles situations, l'utilisation du mot-clé DISTINCT aidera à récupérer des données uniques. Vous pouvez spécifier les colonnes à partir desquelles vous devez extraire les données uniques. Voici la forme d'écriture du mot-clé DISTINCT :

|__+_|

Pour comprendre le fonctionnement du mot-clé DISTINCT, prenons la table EMPLOYEE. Tout d'abord, nous organiserons le tableau par ordre croissant de salaire.

|__+_|

Sortir:

|__+_|

Dans l'ensemble de résultats ci-dessus, il y a des données en double, c'est-à-dire que 30 000 sont présents dans deux lignes différentes. Lorsque nous appliquons le mot-clé DISTINCT, le résultat ne contiendra aucune donnée en double.

|__+_|

Sortir:

|__+_|

JOINTURE SQL

EN SQL, la jointure combine les enregistrements de deux ou plusieurs tables en une seule table. Un JOIN est une source pour combiner des tables en utilisant les colonnes communes dans les tables. Nous verrons un exemple d'acquittement de la réalisation du JOIN.

Nous allons prendre deux tables et joindre ces deux tables en fonction de l'attribut commun entre elles. Prenez la table EMPLOYEE. Nous allons créer une autre table, DEPARTMENT.

|__+_|

Nous avons maintenant deux tables. Nous allons joindre ces deux tables et afficher le jeu de résultats. Il existe un attribut commun dans les deux tables, EMP_ID.

|__+_|

Le résultat est le suivant :

|__+_|

Dans la clause WHERE, on peut joindre des tables ou des relations à l'aide de plusieurs opérateurs : , =, BETWEEN, !, NOT, etc. La jointure peut être divisée en plusieurs types. La jointure INNER joint les tables et renvoie le résultat des données qui correspondent entre les deux relations. Une autre jointure est la jointure LEFT, qui renvoie toutes les données de la table de gauche. S'il n'y a pas de correspondance entre la table de gauche et la table de droite, NULL est écrit. La jointure DROITE produit toutes les données de la table de droite. Pour la table de droite dont la correspondance n'est pas disponible, écrivez NULL.

Joint gauche

La jointure gauche combine deux relations ayant un attribut commun en elles. Vous pouvez spécifier les colonnes à afficher à partir des deux relations. Toutes les données du tableau de gauche sont présentes dans le jeu de résultats. Pour les données de la table de droite qui ne correspondent pas aux données de la table de gauche, NULL est écrit. Nous verrons un exemple de jointure gauche utilisant EMPLOYEE et DEPARTMENT.

|__+_|

DÉPARTEMENT

|__+_|

Nous allons maintenant écrire la requête de jonction de ces deux relations à l'aide du mot-clé LEFT JOIN.

|__+_|

Résultat:

|__+_|

Joindre à droite

La jointure droite joint également deux tables. Lorsque nous appliquons la jointure droite sur deux relations, elle affichera toutes les données de la table de droite correspondant à la table de gauche. Pour la table de gauche ne correspondant pas aux données de la table de droite, NULL est écrit. Nous prendrons les deux mêmes relations, EMPLOYEE et DEPARTMENT, pour comprendre le bon mot-clé de jointure.

|__+_|

Sortir:

|__+_|

Conclusion

Un langage de requête structuré (SQL) est utilisé par toutes les grandes bases de données : MySQL, MS Access, Oracle, etc. Ce langage permet aux utilisateurs de créer des tables dans la base de données et de les manipuler à l'aide de plusieurs clauses, opérateurs, instructions. Cet article est la référence rapide SQL pour les débutants. Les utilisateurs novices peuvent apprendre toutes les bases de SQL à partir de ce didacticiel.

Cet article est la référence rapide SQL, qui fournira des connaissances de base sur la manipulation des données dans la base de données. Nous avons vu toutes les syntaxes de base des commandes DML, DDL, TCL, DQL, DCL. Plus tard, nous avons appris différentes clauses, l'intégrité des données, les types de données, les opérateurs et les expressions. Dans la dernière section, nous avons vu des exemples de création, de manipulation et de suppression des données dans la base de données.