Tous les produits
Search
Centre de documentation

OpenSearch:SQL query syntax

Dernière mise à jour :Aug 10, 2026

Le SQL est le langage standard de gestion des bases de données relationnelles ; les instructions de requête en constituent le cœur. Les sections suivantes décrivent les clauses de requête SQL prises en charge ainsi que leurs limites.

Instructions de requête SQL

  • L'instruction SELECT extrait des données d'une table. Toute la syntaxe avancée des requêtes s'articule autour de SELECT. Pour plus d'informations, consultez SELECT.

  • OpenSearch ne prend pas actuellement en charge la récupération résumée. Pour plus d'informations, consultez FROM-Summary query.

  • La clause WHERE filtre les données d'une table selon des conditions spécifiées. Pour plus d'informations, consultez WHERE.

  • La clause GROUP BY agrège les données d'un ou plusieurs champs pour calculer des valeurs telles que le maximum, le minimum et la moyenne. Pour plus d'informations, consultez GROUP BY.

  • La clause ORDER BY trie les données selon un ou plusieurs champs. L'ordre de tri par défaut est croissant (ASC). Comme le tri peut nuire aux performances, vous devez associer une clause LIMIT à toute clause ORDER BY. Pour plus d'informations, consultez ORDER BY.

  • L'instruction UNION fusionne les données provenant de plusieurs endpoints d'ingestion partageant le même schéma. Les champs, leurs types de données et leur ordre doivent être identiques pour chaque instruction. Pour plus d'informations, consultez UNION.

  • La clause JOIN combine les données de plusieurs tables pour élargir les dimensions de la requête. Pour plus d'informations, consultez Types d'opérations JOIN.

  • Les paramètres dynamiques fonctionnent comme l'interface PreparedStatement d'une base de données. Insérez des espaces réservés sous forme de point d'interrogation (?) dans votre instruction SQL et transmettez les valeurs correspondantes, que le moteur substitue automatiquement. Les paramètres dynamiques améliorent le taux de succès du cache et peuvent augmenter considérablement les performances pour les modèles de requête fixes. Pour plus d'informations, consultez Paramètres dynamiques.

  • Une Table Value Function (TVF) dans TuringSQL accepte en entrée un ou plusieurs paramètres scalaires ainsi qu'une requête SQL, traite cette requête comme une table et renvoie une table en sortie. Pour plus d'informations, consultez Table Value Function.

  • Une Common Table Expression (CTE) définit un jeu de résultats temporaire nommé, disponible au sein d'une seule requête. Vous pouvez référencer la CTE dans les parties suivantes de la requête pour en simplifier la structure. Actuellement, seules les instructions SELECT sont prises en charge. Pour plus d'informations, consultez Introduction to Common Table Expressions.

Limites

  • Les instructions Data Definition Language (DDL) et Data Manipulation Language (DML) ne sont pas actuellement prises en charge.

  • La clause ORDER BY doit être utilisée conjointement avec une clause LIMIT.

  • L'instruction SELECT * n'est pas prise en charge lorsque vous utilisez la clause UNNEST pour interroger une table enfant.

  • Les opérations JOIN sont actuellement exécutées uniquement sur le Searcher. Vous devez garantir une distribution appropriée des données.

  • Pour une opération UNION, le nombre de champs, les noms de champs et les types de données doivent être identiques dans toutes les instructions SELECT.

  • Les index d'analyse numérique ne prennent pas en charge les requêtes utilisant l'opérateur d'égalité (=). Utilisez plutôt une requête de plage, telle que WHERE QUERY('consign_time', '[1, 10]').