Aller au contenu principal
Page traduite

Cette page a été traduite de l'anglais avec l'aide de l'IA. En cas de divergence, la version anglaise fait référence.

LEAD

Renvoie le résultat de l'évaluation d'une expression sur une ligne suivante de la partition.

La première forme de LEAD() renvoie le résultat de l'évaluation de l'expression sur la ligne suivante de la partition. S'il n'y a pas de ligne suivante (parce que la ligne courante est la dernière), NULL est renvoyé.

Si l'argument offset est fourni, il doit être un entier positif ou nul. La valeur renvoyée est le résultat de l'évaluation de l'expression sur la ligne située offset lignes après la ligne courante au sein de la partition. Si offset vaut 0, l'expression est évaluée sur la ligne courante. S'il n'y a pas de ligne située offset lignes après la ligne courante, NULL est renvoyé.

Si une valeur par défaut est également fournie, elle est renvoyée à la place de NULL lorsque la ligne désignée par offset n'existe pas.

Voir aussi : [SELECT] [LAG]


Syntaxe​

SELECT LEAD(expr) OVER ([PARTITION BY column] ORDER BY column) FROM <multipartIdentifier>;

SELECT LEAD(expr, offset) OVER ([PARTITION BY column] ORDER BY column) FROM <multipartIdentifier>;

SELECT LEAD(expr, offset, default) OVER ([PARTITION BY column] ORDER BY column) FROM <multipartIdentifier>;

Arguments​

expr L'expression à évaluer sur la ligne suivante.

offset Facultatif. Un entier positif ou nul indiquant de combien de lignes avancer. Valeur par défaut : 1.

default Facultatif. La valeur à renvoyer si la ligne désignée par offset n'existe pas. Valeur par défaut : NULL.

PARTITION BY column Facultatif. Divise le jeu de résultats en partitions. La fonction LEAD est appliquée séparément au sein de chaque partition.

ORDER BY column Spécifie l'ordre dans lequel les lignes sont traitées.

Valeur(s) renvoyée(s)​

Renvoie la valeur de l'expression évaluée sur la ligne suivante indiquée, ou NULL (ou la valeur par défaut) si cette ligne n'existe pas.


Exemples​

Consulter la version suivante​

-- Compare each release to previous and next release dates
SELECT
tag_name,
name,
published_at,
LAG(tag_name, 1) OVER (ORDER BY published_at) as previous_release,
LEAD(tag_name, 1) OVER (ORDER BY published_at) as next_release
FROM github.repos.releases
WHERE owner = 'stackql'
AND repo = 'stackql'
ORDER BY published_at;

Pour plus d'informations, consultez https://sqlite.org/windowfunctions.html#built-in_window_functions.