> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-detect-table-modification.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# paramètres de session use_query_*

> Paramètres de session ClickHouse du groupe généré use_query_*.

export const VersionHistory = ({rows = []}) => {
  if (rows.length === 0) {
    return null;
  }
  const headers = ["Version", "Valeur par défaut", "Commentaire"];
  const border = "1px solid rgba(128, 128, 128, 0.3)";
  const cell = {
    border,
    padding: "0.25rem 0.5rem",
    textAlign: "start",
    verticalAlign: "top"
  };
  return <details className="not-prose" style={{
    border,
    borderRadius: "0.5rem",
    margin: "0.5rem 0",
    padding: "0.5rem 0.75rem",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <summary style={{
    cursor: "pointer",
    fontWeight: 600,
    opacity: 0.72
  }}>
        Historique des versions
      </summary>
      <table style={{
    borderCollapse: "collapse",
    width: "100%",
    margin: "0.5rem 0 0"
  }}>
        <thead>
          <tr>
            {headers.map(header => <th key={header} style={{
    ...cell,
    fontWeight: 600,
    opacity: 0.72
  }}>
                {header}
              </th>)}
          </tr>
        </thead>
        <tbody>
          {rows.map((row, row_index) => <tr key={row.id ?? row_index}>
              {(row.items ?? []).map((item, item_index) => <td key={item_index} style={{
    ...cell,
    overflowWrap: "anywhere"
  }}>
                  {item?.label}
                </td>)}
            </tr>)}
        </tbody>
      </table>
    </details>;
};

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>Type</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>Par défaut</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Modifiable sans redémarrage
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

Ces paramètres sont disponibles dans [system.settings](/fr/reference/system-tables/settings) et sont générés automatiquement à partir du [code source](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<div id="use_query_cache">
  ## use\_query\_cache
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

S’il est activé, les requêtes `SELECT` peuvent utiliser le [cache de requêtes](/fr/concepts/features/performance/caches/query-cache). Les paramètres [enable\_reads\_from\_query\_cache](/fr/reference/settings/session-settings/enable#enable_reads_from_query_cache)
et [enable\_writes\_to\_query\_cache](/fr/reference/settings/session-settings/enable#enable_writes_to_query_cache) déterminent plus précisément comment le cache est utilisé.

Valeurs possibles :

* 0 - Désactivé
* 1 - Activé

<div id="use_query_condition_cache">
  ## use\_query\_condition\_cache
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.4"},{"label": "1"},{"label": "Une nouvelle optimisation"}]}, {"id": "row-2","items": [{"label": "25.3"},{"label": "0"},{"label": "Nouveau paramètre."}]}]} />

Active le [cache des conditions de requête](/fr/concepts/features/performance/caches/query-condition-cache). Le cache stocke les plages de granules, dans les parties de données, qui ne satisfont pas la condition de la clause `WHERE`,
puis réutilise ces informations comme index éphémère pour les requêtes suivantes.

Valeurs possibles :

* 0 - Désactivé
* 1 - Activé

<div id="use_query_condition_cache_for_top_k">
  ## use\_query\_condition\_cache\_for\_top\_k
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.8"},{"label": "1"},{"label": "Nouveau paramètre permettant d'activer le cache de conditions de requête pour les lectures `ORDER BY ... LIMIT n` (TopK) ; activé par défaut. Le contrôle est désactivé dans la version 26.7, donc la `compatibility` avec une version antérieure le maintient désactivé."}]}]} />

Activez le [cache de conditions de requête](/fr/concepts/features/performance/caches/query-condition-cache) pour les requêtes utilisant l'optimisation `ORDER BY <column> LIMIT n` (TopK), basée sur le filtrage dynamique ou les index de saut. Lorsqu'il est désactivé, ces lectures ne consultent pas le cache et ne l'alimentent pas non plus.

Ces requêtes peuvent ignorer des granules lors de l'exécution selon le seuil courant. Leurs entrées de cache sont donc partitionnées en fonction des paramètres du plan TopK et de l'ensemble des parties de données lues. Ce paramètre n'a aucun effet si `use_query_condition_cache` n'est pas également activé.

Valeurs possibles :

* 0 - Désactivé
* 1 - Activé
