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

> Documentation de la fonction de fenêtre first_value

# first_value

Renvoie la première valeur évaluée dans sa fenêtre ordonnée. Par défaut, les arguments `NULL` sont ignorés, mais le modificateur `RESPECT NULLS` peut être utilisé pour outrepasser ce comportement.

**Syntaxe**

```sql theme={null}
first_value (column_name) [[RESPECT NULLS] | [IGNORE NULLS]]
  OVER ([[PARTITION BY grouping_column] [ORDER BY sorting_column] 
        [ROWS or RANGE expression_to_bound_rows_withing_the_group]] | [window_name])
FROM table_name
WINDOW window_name as ([PARTITION BY grouping_column] [ORDER BY sorting_column])
```

Alias : `any`.

<Note>
  L’utilisation du modificateur facultatif `RESPECT NULLS` après `first_value(column_name)` garantit que les arguments `NULL` ne sont pas ignorés.
  Voir [le traitement des valeurs NULL](/fr/reference/functions/aggregate-functions/index#null-processing) pour plus d’informations.

  Alias : `firstValueRespectNulls`
</Note>

Pour plus de détails sur la syntaxe des window functions, voir : [Window Functions - Syntax](/fr/reference/functions/window-functions/index#syntax).

**Valeur renvoyée**

* La première valeur évaluée dans son frame ordonné.

**Exemple**

Dans cet exemple, la fonction `first_value` est utilisée pour identifier le footballeur le mieux payé à partir d’un jeu de données fictif sur les salaires des joueurs de la Premier League.

```sql title="Query" theme={null}
DROP TABLE IF EXISTS salaries;
CREATE TABLE salaries
(
    `team` String,
    `player` String,
    `salary` UInt32,
    `position` String
)
Engine = Memory;

INSERT INTO salaries FORMAT VALUES
    ('Port Elizabeth Barbarians', 'Gary Chen', 196000, 'F'),
    ('New Coreystad Archdukes', 'Charles Juarez', 190000, 'F'),
    ('Port Elizabeth Barbarians', 'Michael Stanley', 100000, 'D'),
    ('New Coreystad Archdukes', 'Scott Harrison', 180000, 'D'),
    ('Port Elizabeth Barbarians', 'Robert George', 195000, 'M'),
    ('South Hampton Seagulls', 'Douglas Benson', 150000, 'M'),
    ('South Hampton Seagulls', 'James Henderson', 140000, 'M');
```

```sql title="Query" theme={null}
SELECT player, salary, 
       first_value(player) OVER (ORDER BY salary DESC) AS highest_paid_player
FROM salaries;
```

```response title="Response" theme={null}
   ┌─player──────────┬─salary─┬─highest_paid_player─┐
1. │ Gary Chen       │ 196000 │ Gary Chen           │
2. │ Robert George   │ 195000 │ Gary Chen           │
3. │ Charles Juarez  │ 190000 │ Gary Chen           │
4. │ Scott Harrison  │ 180000 │ Gary Chen           │
5. │ Douglas Benson  │ 150000 │ Gary Chen           │
6. │ James Henderson │ 140000 │ Gary Chen           │
7. │ Michael Stanley │ 100000 │ Gary Chen           │
   └─────────────────┴────────┴─────────────────────┘
```
