> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# paramètres de session prefer_*

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

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>;
};

export const CloudOnlyBadge = () => {
  return <div className="cloudBadge">
            <div className="cloudIcon">
            <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path fillRule="evenodd" clipRule="evenodd" d="M5.33395 12.6667H12.3739C13.6593 12.6667 14.7073 11.6187 14.7073 10.3334C14.7073 9.04804 13.6593 8.00004 12.3739 8.00004H12.0839V7.33337C12.0839 5.12671 10.2906 3.33337 8.08395 3.33337C6.09928 3.33337 4.45395 4.78537 4.14195 6.68204C2.55728 6.76271 1.29395 8.06204 1.29395 9.66671C1.29395 11.3234 2.63728 12.6667 4.29395 12.6667H5.33395Z" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
        </div>
            {'Uniquement sur ClickHouse Cloud'}
        </div>;
};

Ces paramètres sont disponibles dans [system.settings](/docs/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="prefer_column_name_to_alias">
  ## prefer\_column\_name\_to\_alias
</div>

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

Active ou désactive l’utilisation des noms de colonnes d’origine à la place des alias dans les expressions et clauses de requête. Ce paramètre est particulièrement important lorsque l’alias est identique au nom de la colonne ; voir [Alias d’expression](/docs/fr/reference/syntax#notes-on-usage). Activez ce paramètre pour rendre les règles de syntaxe des alias dans ClickHouse plus compatibles avec celles de la plupart des autres moteurs de base de données.

Valeurs possibles :

* 0 — Le nom de la colonne est remplacé par l’alias.
* 1 — Le nom de la colonne n’est pas remplacé par l’alias.

**Exemple**

Différence entre l’état activé et désactivé :

Requête :

```sql theme={null}
SET prefer_column_name_to_alias = 0;
SELECT avg(number) AS number, max(number) FROM numbers(10);
```

Résultat :

```text theme={null}
Received exception from server (version 21.5.1):
Code: 184. DB::Exception: Received from localhost:9000. DB::Exception: Aggregate function avg(number) is found inside another aggregate function in query: While processing avg(number) AS number.
```

Requête :

```sql theme={null}
SET prefer_column_name_to_alias = 1;
SELECT avg(number) AS number, max(number) FROM numbers(10);
```

Résultat :

```text theme={null}
┌─number─┬─max(number)─┐
│    4.5 │           9 │
└────────┴─────────────┘
```

<div id="prefer_external_sort_block_bytes">
  ## prefer\_external\_sort\_block\_bytes
</div>

<SettingsInfoBlock type="UInt64" default_value="16744704" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.5"},{"label": "16744704"},{"label": "Préférer des blocs de taille maximale pour le tri externe afin de réduire l’utilisation mémoire lors de la fusion."}]}]} />

Préférer des blocs de taille maximale pour le tri externe afin de réduire l’utilisation mémoire lors de la fusion.

<div id="prefer_global_in_and_join">
  ## prefer\_global\_in\_and\_join
</div>

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

Active le remplacement des opérateurs `IN`/`JOIN` par `GLOBAL IN`/`GLOBAL JOIN`.

Valeurs possibles :

* 0 — Désactivé. Les opérateurs `IN`/`JOIN` ne sont pas remplacés par `GLOBAL IN`/`GLOBAL JOIN`.
* 1 — Activé. Les opérateurs `IN`/`JOIN` sont remplacés par `GLOBAL IN`/`GLOBAL JOIN`.

**Utilisation**

Bien que `SET distributed_product_mode=global` puisse modifier le comportement des requêtes pour les tables distribuées, il ne convient pas aux tables locales ni aux tables provenant de ressources externes. C'est là que le paramètre `prefer_global_in_and_join` entre en jeu.

Par exemple, nous avons des nœuds de service de requêtes qui contiennent des tables locales, lesquelles ne se prêtent pas à la distribution. Nous devons répartir leurs données à la volée lors du traitement distribué avec le mot-clé `GLOBAL` — `GLOBAL IN`/`GLOBAL JOIN`.

Un autre cas d'usage de `prefer_global_in_and_join` est l'accès à des tables créées par des moteurs externes. Ce paramètre permet de réduire le nombre d'appels aux sources externes lors de la jointure de telles tables : un seul appel par requête.

**Voir aussi :**

* [Sous-requêtes distribuées](/docs/fr/reference/statements/in#distributed-subqueries) pour plus d'informations sur l'utilisation de `GLOBAL IN`/`GLOBAL JOIN`

<div id="prefer_localhost_replica">
  ## prefer\_localhost\_replica
</div>

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

Active ou désactive l’utilisation préférentielle de la réplique localhost lors du traitement des requêtes distribuées.

Valeurs possibles :

* 1 — ClickHouse envoie toujours une requête à la réplique localhost si elle existe.
* 0 — ClickHouse utilise la stratégie d’équilibrage spécifiée par le paramètre [load\_balancing](/docs/fr/reference/settings/session-settings/load-balancing#load_balancing).

<Note>
  Désactivez ce paramètre si vous utilisez [max\_parallel\_replicas](/docs/fr/reference/settings/session-settings/max#max_parallel_replicas) sans [parallel\_replicas\_custom\_key](/docs/fr/reference/settings/session-settings/parallel-replicas#parallel_replicas_custom_key).
  Si [parallel\_replicas\_custom\_key](/docs/fr/reference/settings/session-settings/parallel-replicas#parallel_replicas_custom_key) est défini, désactivez ce paramètre uniquement s’il est utilisé sur un cluster comportant plusieurs shards avec plusieurs répliques.
  S’il est utilisé sur un cluster comportant un seul shard et plusieurs répliques, désactiver ce paramètre aura des effets négatifs.
</Note>

<div id="prefer_warmed_unmerged_parts_seconds">
  ## prefer\_warmed\_unmerged\_parts\_seconds
</div>

<CloudOnlyBadge />

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

N’a d’effet que dans ClickHouse Cloud. Si une part fusionnée date de moins de ce nombre de secondes et n’est pas préchauffée (voir [cache\_populated\_by\_fetch](/docs/fr/reference/settings/merge-tree-settings#cache_populated_by_fetch)), mais que toutes ses parts sources sont disponibles et préchauffées, les requêtes SELECT liront ces parts à la place. Uniquement pour Replicated-/SharedMergeTree. Notez que cela vérifie uniquement si CacheWarmer a traité la part ; si la part a été mise en cache par un autre mécanisme, elle sera quand même considérée comme froide jusqu’à ce que CacheWarmer la traite ; si elle a été préchauffée puis évincée du cache, elle sera quand même considérée comme chaude.
