Retour à la liste des articles Articles
5 minutes de lecture

Quelle est la différence entre SQL et T-SQL ?

Si vous commencez à apprendre SQL et que les différences entre le langage SQL standard et d'autres langages similaires comme T-SQL vous laissent perplexe, cet article vous aidera à clarifier les choses. Non seulement vous apprendrez la différence entre SQL et T-SQL, mais vous trouverez également des explications concernant les sujets qu'il serait préférable de commencer à apprendre en premier : SQL standard ou quelque chose de plus spécifique comme MS SQL Server.

Qu'est-ce que le SQL standard ?

SQL (Structured Query Language) est un langage de programmation standard ANSI/ISO de base conçu pour opérer sur des données stockées dans des bases de données relationnelles. Grâce à ces normes internationales, les systèmes de bases de données relationnelles qui mettent en œuvre ce langage permettent d'écrire des requêtes similaires sur la plupart des systèmes. Vous pouvez sélectionner des données, manipuler des données, créer des objets, gérer des utilisateurs et des bases de données. Les fournisseurs de systèmes de gestion de bases de données prennent en charge la plupart des fonctionnalités des normes ANSI/ISO SQL, mais les entreprises incluent également leurs propres fonctionnalités non standard qui étendent le langage. L'apprentissage du langage SQL dit standard est fondamental pour l'apprentissage d'autres extensions du langage comme T-SQL, car ces extensions mettent en œuvre la plupart des fonctionnalités SQL de base. Par exemple, il n'y a aucune différence entre SQL et T-SQL en ce qui concerne les clauses LIKE. En apprenant le SQL standard, vous serez en mesure d'opérer sur des données dans la plupart des systèmes de bases de données.

Qu'est-ce que T-SQL ?

Puisque nous avons déjà le SQL standard supporté par les fournisseurs de bases de données relationnelles, à quoi sert le T-SQL ? Y a-t-il un besoin d'apprendre T-SQL ? Quelle est la différence entre SQL et T-SQL ?

Même si presque tous les systèmes de bases de données relationnelles utilisent le langage SQL standard, presque tous incluent également des extensions non standard du langage. L'implémentation spécifique de SQL utilisée dans le système de base de données Microsoft SQL Server est appelée le langage Transact-SQL, ou T-SQL en abrégé. T-SQL possède plus de caractéristiques et de fonctions que ce qui est spécifié dans la norme SQL. SQL est presque un sous-ensemble de T-SQL, donc si vous connaissez T-SQL, vous connaissez également SQL standard, car il contient presque toutes les fonctionnalités de SQL standard. La différence entre SQL et T-SQL est que ce dernier possède plus de fonctionnalités destinées à vous aider à rendre l'écriture de requêtes plus facile, plus rapide et plus efficace. Ainsi, si vous travaillez avec MS SQL Serve, vous utilisez T-SQL.

T-SQL et SQL standard - Quelle est la différence ?

Dans d'autres systèmes de bases de données relationnelles, les noms des extensions et des fonctionnalités supplémentaires sont différents. Par exemple, Oracle possède le langage PL/SQL, et PostgreSQL implémente PL/pgSQL.

Actuellement, il n'existe aucune implémentation de SQL qui inclut 100% des fonctionnalités de SQL standard, mais toutes les implémentations disponibles incluent la plupart des fonctionnalités standard.

Regardez l'image ci-dessous :

T-SQL et SQL standard - Quelle est la différence ?

Exemples de différences entre T-SQL et SQL standard

La première différence entre SQL et T-SQL est le mot-clé TOP, qui est utilisé principalement dans une instruction SELECT. Il indique combien de lignes doivent être retournées par une requête dans un ensemble de résultats. TOP est placé après SELECT avec le nombre de lignes à renvoyer. Par exemple, la requête suivante ne renvoie que les 12 premiers résultats :

SELECT TOP 12 Id, Name, Description  
FROM Products ORDER BY Name;

Vous ne trouverez pas cette clause dans le langage SQL standard - elle n'est disponible que dans MS SQL Server. Vous pouvez en savoir plus sur comment et quand utiliser l'instruction TOP dans MS SQL Server dans le cours "SQL pour les débutants in MS SQL Server ".

Une autre différence entre SQL et T-SQL réside dans la syntaxe de la fonction SUBSTRING utilisée pour couper une sous-chaîne à partir d'une entrée de chaîne donnée. En SQL standard, la syntaxe de cette fonction est :

SUBSTRING(str FROM start [FOR len])

Dans le serveur MS SQL, la syntaxe de cette fonction est: :

SUBSTRING(str, start, len)

Dans ces fonctions, str est une chaîne donnée à rechercher, start est le numéro de départ d'un caractère (le premier est 1) dans une chaîne à partir de laquelle la fonction commencera la recherche, et len est la longueur de la chaîne à retourner.

Ce ne sont là que deux exemples des différences entre le SQL standard et le T-SQL, mais vous pouvez en apprendre davantage dans le cours "SQL pour les débutants in MS SQL Server" et dans le cours "SQL pour les débutants et dans ce cours " T-SQL ".

Quel est le meilleur moyen de commencer à apprendre : SQL standard ou T-SQL ?

LearnSQL.fr propose deux cours pour débutants : "SQL pour les débutants" et "SQL pour les débutants in MS SQL Server ". Vous ne savez peut-être pas lequel choisir en premier. Si vous souhaitez apprendre un langage permettant de communiquer avec n'importe quelle base de données relationnelle, choisissez le cours " SQL pour les débutants", où vous apprendrez le langage SQL standard. Le matériel que vous apprendrez sera universel et vous permettra d'utiliser différents systèmes de gestion de bases de données relationnelles (SGBDR). Si, toutefois, vous souhaitez acquérir des connaissances sur T-SQL en particulier, parce que vous envisagez de travailler avec le système MS SQL Server, il est bon de commencer par le cours "SQL pour les débutants in MS SQL Server " pour apprendre Transact-SQL en détail.

Résumé

Le choix de commencer par l'apprentissage de SQL standard, de T-SQL ou de toute autre variante dépend principalement du fait que vous sachiez que vous utiliserez un système de base de données particulier. Commencez l'un ou l'autre de ces cours dès LearnSQL.fr dès aujourd'hui et vous serez en mesure d'écrire des requêtes SQL pour donner un sens à vos données.