Passer au contenu principal
La SQL Console est le moyen le plus rapide et le plus simple d’explorer et d’interroger vos bases de données dans ClickHouse Cloud. Vous pouvez utiliser la SQL Console pour :
  • Vous connecter à vos services ClickHouse Cloud
  • Afficher, filtrer et trier les données des tables
  • Exécuter des requêtes et visualiser les résultats en quelques clics seulement
  • Partager des requêtes avec les membres de l’équipe et collaborer plus efficacement.

Explorer les tables

Affichage de la liste des tables et des informations sur le schéma

Un aperçu des tables de votre instance ClickHouse est disponible dans la barre latérale gauche. Utilisez le sélecteur de base de données en haut de cette barre pour afficher les tables d’une base de données spécifique Vous pouvez également développer les tables de la liste pour afficher les colonnes et les types

Explorer les données d’une table

Cliquez sur une table dans la liste pour l’ouvrir dans un nouvel onglet. Dans la Table View, vous pouvez facilement afficher, sélectionner et copier les données. Notez que la structure et la mise en forme sont conservées lors du copier-coller vers des applications de feuille de calcul comme Microsoft Excel et Google Sheets. Vous pouvez naviguer entre les pages de données du tableau (par tranches de 30 lignes) à l’aide des contrôles de navigation dans le pied de page.

Inspection des données d’une cellule

L’outil Cell Inspector permet d’afficher de grandes quantités de données contenues dans une seule cellule. Pour l’ouvrir, faites un clic droit sur une cellule et sélectionnez ‘Inspect Cell’. Le contenu du Cell Inspector peut être copié en cliquant sur l’icône de copie dans l’angle supérieur droit de l’inspecteur.

Filtrage et tri des tables

Trier une table

Pour trier une table dans la SQL Console, ouvrez une table et sélectionnez le bouton ‘Sort’ dans la barre d’outils. Ce bouton ouvre un menu qui vous permet de configurer le tri. Vous pouvez choisir la colonne de tri et définir l’ordre du tri (croissant ou décroissant). Sélectionnez ‘Apply’ ou appuyez sur Entrée pour trier votre table La SQL Console vous permet également d’ajouter plusieurs tris à une table. Cliquez à nouveau sur le bouton ‘Sort’ pour ajouter un autre tri. Remarque : les tris sont appliqués dans l’ordre dans lequel ils apparaissent dans le volet de tri (de haut en bas). Pour supprimer un tri, cliquez simplement sur le bouton ‘x’ à côté du tri.

Filtrer une table

Pour filtrer une table dans la SQL Console, ouvrez une table et sélectionnez le bouton ‘Filter’. Comme pour le tri, ce bouton ouvre un menu qui vous permet de configurer votre filtre. Vous pouvez choisir la colonne sur laquelle filtrer et sélectionner les critères souhaités. La SQL Console affiche automatiquement les options de filtre adaptées au type de données contenu dans la colonne. Lorsque votre filtre vous convient, vous pouvez sélectionner ‘Apply’ pour filtrer vos données. Vous pouvez également ajouter d’autres filtres, comme illustré ci-dessous. Comme pour le tri, cliquez sur le bouton ‘x’ à côté d’un filtre pour le supprimer.

Filtrage et tri simultanés

La SQL Console vous permet de filtrer et de trier une table simultanément. Pour ce faire, ajoutez tous les filtres et critères de tri souhaités en suivant les étapes décrites ci-dessus, puis cliquez sur le bouton « Apply ».

Créer une requête à partir de filtres et de tris

La SQL Console peut convertir directement vos tris et vos filtres en requêtes en un clic. Sélectionnez simplement le bouton ‘Create Query’ dans la barre d’outils avec les paramètres de tri et de filtre de votre choix. Après avoir cliqué sur ‘Create query’, un nouvel onglet de requête s’ouvrira, prérempli avec la commande SQL correspondant aux données contenues dans votre Table View.
Les filtres et les tris ne sont pas obligatoires lors de l’utilisation de la fonctionnalité ‘Create Query’.
Pour en savoir plus sur l’exécution de requêtes dans la SQL Console, consultez la documentation sur les requêtes (link).

Créer et exécuter une requête

Créer une requête

Il existe deux façons de créer une nouvelle requête dans la SQL Console.
  • Cliquez sur le bouton « + » dans la barre d’onglets
  • Sélectionnez le bouton « New Query » dans la liste des requêtes de la barre latérale gauche

Exécuter une requête

Pour exécuter une requête, saisissez une ou plusieurs commandes SQL dans le SQL Editor, puis cliquez sur le bouton « Run » ou utilisez le raccourci cmd / ctrl + enter. Pour écrire et exécuter plusieurs commandes de façon séquentielle, veillez à ajouter un point-virgule après chaque commande. Options d’exécution des requêtes Par défaut, un clic sur le bouton Run exécute toutes les commandes contenues dans le SQL Editor. La SQL Console prend en charge deux autres options d’exécution des requêtes :
  • Exécuter les commandes sélectionnées
  • Exécuter la commande au niveau du curseur
Pour exécuter les commandes sélectionnées, sélectionnez la commande ou la séquence de commandes souhaitée, puis cliquez sur le bouton « Run » (ou utilisez le raccourci cmd / ctrl + enter). Vous pouvez également sélectionner « Run selected » dans le menu contextuel du SQL Editor (accessible par clic droit n’importe où dans l’éditeur) lorsqu’un texte est sélectionné. Il existe deux façons d’exécuter la commande à la position actuelle du curseur :
  • Sélectionnez « At Cursor » dans le menu étendu des options d’exécution (ou utilisez le raccourci clavier correspondant cmd / ctrl + shift + enter
  • Sélectionnez « Run at cursor » dans le menu contextuel du SQL Editor
La commande située à la position du curseur clignote en jaune lors de son exécution.

Annuler une requête

Lorsqu’une requête est en cours d’exécution, le bouton ‘Run’ de la barre d’outils de l’éditeur de requêtes est remplacé par un bouton ‘Cancel’. Cliquez simplement sur ce bouton ou appuyez sur Esc pour annuler la requête. Remarque : les résultats déjà renvoyés restent disponibles après l’annulation.

Enregistrer une requête

Si elle n’a pas encore été nommée, votre requête devrait s’appeler « Untitled Query ». Cliquez sur le nom de la requête pour le modifier. Renommer une requête l’enregistre automatiquement. Vous pouvez également utiliser le bouton d’enregistrement ou le raccourci clavier cmd / ctrl + s pour enregistrer une requête.

Utiliser GenAI pour gérer les requêtes

Cette fonctionnalité vous permet de rédiger des requêtes sous forme de questions en langage naturel et de laisser la console de requêtes générer des requêtes SQL à partir du contexte des tables disponibles. GenAI peut également vous aider à déboguer vos requêtes. Pour en savoir plus sur GenAI, consultez l’article de blog Announcing GenAI powered query suggestions in ClickHouse Cloud.

Configuration de la table

Importons le jeu de données d’exemple UK Price Paid et utilisons-le pour créer quelques requêtes GenAI.
  1. Ouvrez un service ClickHouse Cloud.
  2. Créez une nouvelle requête en cliquant sur l’icône +.
  3. Collez et exécutez le code suivant :
    CREATE TABLE uk_price_paid
    (
        price UInt32,
        date Date,
        postcode1 LowCardinality(String),
        postcode2 LowCardinality(String),
        type Enum8('terraced' = 1, 'semi-detached' = 2, 'detached' = 3, 'flat' = 4, 'other' = 0),
        is_new UInt8,
        duration Enum8('freehold' = 1, 'leasehold' = 2, 'unknown' = 0),
        addr1 String,
        addr2 String,
        street LowCardinality(String),
        locality LowCardinality(String),
        town LowCardinality(String),
        district LowCardinality(String),
        county LowCardinality(String)
    )
    ENGINE = MergeTree
    ORDER BY (postcode1, postcode2, addr1, addr2);
    
    L’exécution de cette requête devrait prendre environ 1 seconde. Une fois terminée, vous devriez avoir une table vide appelée `uk_price_paid.
  4. Créez une nouvelle requête et collez la requête suivante :
    INSERT INTO uk_price_paid
    WITH
       splitByChar(' ', postcode) AS p
    SELECT
        toUInt32(price_string) AS price,
        parseDateTimeBestEffortUS(time) AS date,
        p[1] AS postcode1,
        p[2] AS postcode2,
        transform(a, ['T', 'S', 'D', 'F', 'O'], ['terraced', 'semi-detached', 'detached', 'flat', 'other']) AS type,
        b = 'Y' AS is_new,
        transform(c, ['F', 'L', 'U'], ['freehold', 'leasehold', 'unknown']) AS duration,
        addr1,
        addr2,
        street,
        locality,
        town,
        district,
        county
    FROM url(
        'http://prod.publicdata.landregistry.gov.uk.s3-website-eu-west-1.amazonaws.com/pp-complete.csv',
        'CSV',
        'uuid_string String,
        price_string String,
        time String,
        postcode String,
        a String,
        b String,
        c String,
        addr1 String,
        addr2 String,
        street String,
        locality String,
        town String,
        district String,
        county String,
        d String,
        e String'
    ) SETTINGS max_http_get_redirects=10;
    
Cette requête récupère le jeu de données depuis le site gov.uk. Ce fichier fait environ 4 Go ; son exécution prendra donc quelques minutes. Une fois la requête traitée par ClickHouse, vous devriez retrouver l’ensemble du jeu de données dans la table uk_price_paid.

Création d’une requête

Créons une requête en langage naturel.
  1. Sélectionnez la table uk_price_paid, puis cliquez sur Create Query.
  2. Cliquez sur Generate SQL. Il se peut qu’il vous soit demandé d’accepter que vos requêtes soient envoyées à ChatGPT. Vous devez sélectionner I agree pour continuer.
  3. Vous pouvez maintenant utiliser ce prompt pour saisir une requête en langage naturel et demander à ChatGPT de la convertir en requête SQL. Dans cet exemple, nous allons saisir :
    Montrez-moi le prix total et le nombre total de toutes les transactions uk_price_paid par année.
  4. La console générera la requête recherchée et l’affichera dans un nouvel onglet. Dans notre exemple, GenAI a créé la requête suivante :
    -- Montrez-moi le prix total et le nombre total de toutes les transactions uk_price_paid par année.
    SELECT year(date), sum(price) as total_price, Count(*) as total_transactions
    FROM uk_price_paid
    GROUP BY year(date)
    
  5. Une fois que vous avez vérifié que la requête est correcte, cliquez sur Run pour l’exécuter.

Débogage

Testons maintenant les capacités de débogage de requêtes de GenAI.
  1. Créez une nouvelle requête en cliquant sur l’icône +, puis collez le code suivant :
    -- Affiche le prix total et le nombre total de toutes les transactions uk_price_paid pour chaque année.
    SELECT year(date), sum(pricee) as total_price, Count(*) as total_transactions
    FROM uk_price_paid
    GROUP BY year(date)
    
  2. Cliquez sur Run. La requête échoue, car nous essayons de récupérer des valeurs à partir de pricee au lieu de price.
  3. Cliquez sur Fix Query.
  4. GenAI tente alors de corriger la requête. Dans ce cas, il a remplacé pricee par price. Il a également déterminé que toYear était une fonction plus adaptée dans ce scénario.
  5. Sélectionnez Apply pour ajouter les modifications suggérées à votre requête, puis cliquez sur Run.
Gardez à l’esprit que GenAI est une fonctionnalité expérimentale. Soyez prudent lorsque vous exécutez des requêtes générées par GenAI sur n’importe quel jeu de données.

Fonctionnalités avancées pour les requêtes

Rechercher dans le résultat de la requête

Après l’exécution d’une requête, vous pouvez rapidement rechercher dans le résultat de la requête renvoyé à l’aide du champ de recherche du volet des résultats. Cette fonctionnalité permet de prévisualiser le résultat d’une clause WHERE supplémentaire, ou simplement de vérifier que certaines données sont bien incluses dans le résultat de la requête. Après avoir saisi une valeur dans le champ de recherche, le volet des résultats se met à jour et renvoie les enregistrements contenant un champ correspondant à la valeur saisie. Dans cet exemple, nous allons rechercher toutes les occurrences de breakfast dans la table hackernews pour les commentaires contenant ClickHouse (sans tenir compte de la casse) : Remarque : tout champ correspondant à la valeur saisie sera renvoyé. Par exemple, le troisième enregistrement de la capture d’écran ci-dessus ne correspond pas à « breakfast » dans le champ by, mais c’est bien le cas du champ text :

Réglage des paramètres de pagination

Par défaut, le volet des résultats de la requête affiche tous les enregistrements sur une seule page. Pour les ensembles de résultats plus volumineux, il peut être préférable d’activer la pagination pour en faciliter la consultation. Cela peut se faire à l’aide du sélecteur de pagination situé en bas à droite du volet des résultats de la requête : La sélection d’une taille de page applique immédiatement la pagination à l’ensemble de résultats, et des options de navigation apparaissent au centre du pied du volet des résultats de la requête

Exportation des données du résultat de la requête

Les résultats de requête peuvent être facilement exportés au format CSV directement depuis la SQL Console. Pour ce faire, ouvrez le menu ••• à droite de la barre d’outils du volet des résultats, puis sélectionnez ‘Télécharger au format CSV’.

Visualiser les données de requête

Certaines données se prêtent mieux à une interprétation sous forme de graphique. Vous pouvez créer rapidement des visualisations à partir des données du résultat de la requête, directement depuis le SQL Console, en quelques clics seulement. À titre d’exemple, nous utiliserons une requête qui calcule des statistiques hebdomadaires sur les trajets en taxi à New York :
SELECT
   toStartOfWeek(pickup_datetime) AS week,
   sum(total_amount) AS fare_total,
   sum(trip_distance) AS distance_total,
   count(*) AS trip_total
FROM
   nyc_taxi
GROUP BY
   1
ORDER BY
   1 ASC
Sans visualisation, ces résultats sont difficiles à interpréter. Transformons-les en graphique.

Création de graphiques

Pour commencer à créer votre visualisation, sélectionnez l’option ‘Chart’ dans la barre d’outils du volet des résultats de la requête. Un volet de configuration du graphique s’affiche : Nous allons commencer par créer un simple graphique à barres montrant trip_total par week. Pour cela, faites glisser le champ week sur l’axe des X et le champ trip_total sur l’axe des Y : La plupart des types de graphiques prennent en charge plusieurs champs sur les axes numériques. Pour l’illustrer, faites glisser le champ fare_total sur l’axe des Y :

Personnalisation des graphiques

La SQL Console prend en charge dix types de graphiques, sélectionnables depuis le sélecteur de type de graphique dans le volet de configuration du graphique. Par exemple, nous pouvons facilement faire passer le type de graphique précédent de Bar à Area : Les titres des graphiques correspondent au nom de la requête qui fournit les données. Si vous modifiez le nom de la requête, le titre du graphique sera lui aussi mis à jour : Plusieurs caractéristiques plus avancées du graphique peuvent également être ajustées dans la section ‘Advanced’ du volet de configuration du graphique. Pour commencer, nous allons modifier les paramètres suivants :
  • Sous-titre
  • Titres des axes
  • Orientation des libellés de l’axe des x
Notre graphique sera mis à jour en conséquence : Dans certains cas, il peut être nécessaire d’ajuster indépendamment l’échelle des axes pour chaque champ. Cela peut également être fait dans la section ‘Advanced’ du volet de configuration du graphique en spécifiant des valeurs minimale et maximale pour une plage d’axe. Par exemple, le graphique ci-dessus est satisfaisant, mais pour mettre en évidence la corrélation entre nos champs trip_total et fare_total, les plages des axes doivent être ajustées :

Partage des requêtes

La SQL Console vous permet de partager des requêtes avec votre équipe. Lorsqu’une requête est partagée, tous les membres de l’équipe peuvent la consulter et la modifier. Les requêtes partagées sont un excellent moyen de collaborer avec votre équipe. Pour partager une requête, cliquez sur le bouton « Share » dans la barre d’outils des requêtes. Une boîte de dialogue s’ouvre, vous permettant de partager la requête avec tous les membres d’une équipe. Si vous avez plusieurs équipes, vous pouvez choisir celle avec laquelle partager la requête. Dans certains cas, il peut être nécessaire d’ajuster indépendamment l’échelle des axes pour chaque champ. Vous pouvez également le faire dans la section « Advanced » du volet de configuration du graphique en spécifiant les valeurs minimale et maximale d’une plage d’axe. Par exemple, le graphique ci-dessus est satisfaisant, mais pour mettre en évidence la corrélation entre nos champs trip_total et fare_total, les plages d’axe doivent être légèrement ajustées :
Dernière modification le 25 juin 2026