Aller au contenu principal

Requête SQL

Utilisez la fonctionnalité requête SQL lorsque vous devez récupérer des données en utilisant une logique plus complexe que la simple sélection de champs à partir d'une seule table. Les requêtes SQL peuvent inclure des jointures, des regroupements, des résumés, des filtrages, des sous-requêtes, et toute autre syntaxe prise en charge par votre fournisseur de base de données. Cela vous permet de préparer et de transformer les données dans la base de données avant qu'elles ne soient chargées dans DataSync.

Quand utiliser la requête SQL

  • Jointure des données : Combinez les données de plusieurs tables en un seul ensemble de données avant de charger.
  • Agrégation des valeurs : Résumez les données en utilisant des fonctions telles que SUM, COUNT ou AVG pour réduire le volume ou préparer des métriques.
  • Application de filtres avancés : Récupérez uniquement des lignes spécifiques en filtrant sur des conditions difficiles à représenter.

Ajouter une requête SQL

  1. À partir de l'écran d'accueil ou du panneau de navigation à gauche, sélectionnez Extractions.
  2. Sélectionnez une extraction dans la liste.
  3. Sélectionnez le lien sous la colonne Tables.
  4. Cliquez sur Nouveau, puis choisissez Ajouter une requête SQL.
  5. Entrez un nom pour la table destination.
  6. (Facultatif) Entrez une description.
  7. Dans la case Expression SQL, entrez votre instruction SQL.
  8. Cliquez sur Enregistrer.

    Pour éditer une instruction SQL, placez le curseur sur la requête dans la liste Tables, sélectionnez l'icône de crayon et mettez à jour l'instruction.

Instruction SQL

Utilisez la case d'expression SQL pour créer une requête qui extrait les données précises dont vous avez besoin. Votre instruction peut inclure des jointures, des filtres, des agrégations, des sous-requêtes et toute autre fonctionnalité SQL prise en charge par votre fournisseur de base de données. Vous pouvez également utiliser des variables pour paramétrer les conditions, rendant la requête réutilisable sans codage en dur des valeurs.

important

Incluez le nom du schéma dans votre instruction SQL si votre base de données l'exige.

Exemple avec une variable

SELECT *
FROM Sales.Orders
WHERE YEAR(OrderDate) = @YEAR

Exemple avec jointure et filtrage

SELECT *
FROM SEED.SINVOICE
LEFT JOIN SEED.SINVOICED
ON SINVOICE_0 = SINVOICED.NUM_0
WHERE YEAR(INVDAT_0) >= 2019

Variables d'extraction

Lors de la création d'une requête SQL, vous pourriez avoir besoin de référencer le nom du schéma pour accéder à des tables spécifiques. Au lieu de coder en dur ces noms de schéma, vous pouvez utiliser les variables système ##SourceSchema et ##DestinationSchema. Ces variables se résolvent automatiquement aux schémas Source et Destination définis dans le popup de configuration d'extraction.

Exemple:

select i.* 
from ##SourceSchema.TableX i
left join ##SourceSchema.TableY c
on i.FieldX = c.FieldY