Log Service met à votre disposition des fonctions temporelles, des fonctions d'extraction de date et d'heure, des fonctions d'intervalle de temps ainsi que des fonctions de remplissage de séries temporelles. Ces outils vous permettent d'effectuer diverses opérations sur les journaux, telles que la conversion de format, le regroupement et l'agrégation. Cette rubrique détaille la syntaxe et fournit des exemples pour chacune de ces fonctions.
Fonctions de date et d'heure
Log Service prend en charge les fonctions de date et d'heure suivantes.
Lorsque vous configurez le format de l'heure, spécifiez-le uniquement à la seconde près. N'incluez ni les millisecondes ni les microsecondes.
Vous devez uniquement configurer le format de l'heure (format) pour la partie horaire de la chaîne temporelle. Il n'est pas nécessaire de définir un format pour les autres éléments, tels que le fuseau horaire.
Chaque journal dans Log Service contient le champ réservé
__time__. La valeur de ce champ est un horodatage UNIX, par exemple 1592374067, qui correspond au 17/06/2020 à 14:07:47.Dans les instructions d'analyse de Log Service, les chaînes doivent être entourées de guillemets simples ('). Les caractères non mis entre guillemets ou ceux placés entre guillemets doubles (") représentent un nom de champ ou de colonne. Par exemple,
'status'représente la chaîne « status », tandis questatusou"status"désigne le champ de journal status.
|
Type de fonction |
Nom de la fonction |
Syntaxe |
Description |
SQL |
SPL |
|
Fonctions de date et d'heure |
current_date |
Renvoie la date actuelle. |
√ |
× |
|
|
current_time |
Renvoie l'heure actuelle et le fuseau horaire. |
√ |
× |
||
|
current_timestamp |
Renvoie la date, l'heure et le fuseau horaire actuels. |
√ |
× |
||
|
current_timezone() |
Renvoie le fuseau horaire actuel. |
√ |
× |
||
|
date(x) |
Renvoie la partie date d'une expression de date ou d'horodatage. |
√ |
× |
||
|
date_format(x, format) |
Convertit une expression d'horodatage en une chaîne selon le format spécifié. |
√ |
√ |
||
|
date_parse(x, format) |
Analyse une expression de chaîne en un horodatage en utilisant le format spécifié. |
√ |
√ |
||
|
from_iso8601_date(x) |
Convertit une chaîne de date ISO 8601 en une valeur de date. |
√ |
× |
||
|
from_iso8601_timestamp(x) |
Convertit une chaîne d'horodatage ISO 8601 en une valeur d'horodatage. |
√ |
× |
||
|
from_unixtime(x) |
Convertit un horodatage UNIX en une valeur d'horodatage sans information de fuseau horaire. |
√ |
√ |
||
|
from_unixtime(x, time zone) |
Convertit un horodatage UNIX en une valeur d'horodatage dans le fuseau horaire spécifié. |
√ |
× |
||
|
from_unixtime(x, hours, minutes) |
Convertit un horodatage UNIX en une valeur d'horodatage avec le décalage spécifié en hours et minutes. |
√ |
× |
||
|
localtime |
Renvoie l'heure locale. |
√ |
× |
||
|
localtimestamp |
Renvoie la date et l'heure locales. |
√ |
× |
||
|
now() |
Renvoie la date et l'heure actuelles. La fonction now est un alias de la fonction current_timestamp. |
√ |
× |
||
|
to_iso8601(x) |
Convertit une expression de date ou d'horodatage en une chaîne au format ISO 8601. |
√ |
× |
||
|
to_unixtime(x) |
Convertit une expression d'horodatage en un horodatage UNIX. |
√ |
√ |
||
|
current_unixtimestamp() |
Renvoie l'horodatage UNIX actuel du système. |
× |
√ |
||
|
Fonctions d'extraction de date et d'heure |
day(x) |
Extrait le jour du mois d'une expression de date ou d'horodatage. La fonction day est un alias de la fonction day_of_month. |
√ |
× |
|
|
day_of_month(x) |
Extrait le jour du mois d'une expression de date ou d'horodatage. La fonction day_of_month est un alias de la fonction day. |
√ |
× |
||
|
day_of_week(x) |
Extrait le jour de la semaine d'une expression de date ou d'horodatage. La fonction day_of_week est un alias de la fonction dow. |
√ |
√ |
||
|
day_of_year(x) |
Extrait le jour de l'année d'une expression de date ou d'horodatage. La fonction day_of_year est un alias de la fonction doy. |
√ |
√ |
||
|
dow(x) |
Extrait le jour de la semaine d'une expression de date ou d'horodatage. La fonction dow est un alias de la fonction day_of_week. |
√ |
√ |
||
|
doy(x) |
Extrait le jour de l'année d'une expression de date ou d'horodatage. La fonction doy est un alias de la fonction day_of_year. |
√ |
√ |
||
|
extract(field from x) |
Extrait une partie, telle qu'un composant de date ou d'heure, d'une expression de date ou d'horodatage comme spécifié par field. |
√ |
× |
||
|
hour(x) |
Extrait l'heure du jour (au format 24 heures) d'une expression de date ou d'horodatage. |
√ |
√ |
||
|
minute(x) |
Extrait la minute de l'heure d'une expression de date ou d'horodatage. |
√ |
√ |
||
|
month(x) |
Extrait le mois de l'année d'une expression de date ou d'horodatage. |
√ |
√ |
||
|
quarter(x) |
Renvoie le trimestre de l'année à partir d'une expression de date ou d'horodatage. |
√ |
√ |
||
|
second(x) |
Extrait la seconde de la minute d'une expression de date ou d'horodatage. |
√ |
√ |
||
|
timezone_hour(x) |
Renvoie la composante heure du décalage de fuseau horaire. |
√ |
× |
||
|
timezone_minute(x) |
Renvoie la composante minute du décalage de fuseau horaire. |
√ |
× |
||
|
week(x) |
Renvoie le numéro de la semaine de l'année à partir d'une expression de date ou d'horodatage. La fonction week est un alias de la fonction week_of_year. |
√ |
× |
||
|
week_of_year(x) |
Renvoie le numéro de la semaine de l'année pour une date donnée. La fonction week_of_year est un alias de la fonction week. |
√ |
× |
||
|
year(x) |
Extrait l'année d'une expression de date ou d'horodatage. |
√ |
√ |
||
|
year_of_week(x) |
Extrait l'année selon le numérotage des semaines ISO d'une expression de date ou d'horodatage. La fonction year_of_week est un alias de la fonction yow. |
√ |
√ |
||
|
yow(x) |
Extrait l'année selon le numérotage des semaines ISO de la date cible. La fonction yow est un alias de la fonction year_of_week. |
√ |
√ |
||
|
Fonctions d'intervalle de temps |
date_trunc(unit, x) |
Tronque une expression de date ou d'horodatage à l'unité spécifiée, telle que la milliseconde, la seconde, la minute, l'heure, le jour, le mois ou l'année. |
√ |
× |
|
|
date_add(unit, N, x) |
Ajoute un intervalle de N unités à x. |
√ |
√ |
||
|
date_diff(unit, x, y) |
Renvoie la différence entre deux expressions d'horodatage, x et y, exprimée dans l'unité spécifiée. |
√ |
√ |
||
|
Fonctions de complétion de séries temporelles |
time_series(x, window, format, padding_data) |
Complète la série temporelle pour remplir les points de données manquants dans la fenêtre de temps de votre requête. |
√ |
× |
Fonctions de date et d'heure
current_date
La fonction current_date renvoie la date actuelle au format YYYY-MM-DD.
Syntaxe
current_date
Type de valeur de retour
Type Date.
Exemple
Interroge les journaux d'hier.
-
Instruction de requête et d'analyse (debug)
* | SELECT * FROM log WHERE __time__ < to_unixtime(current_date) AND __time__ > to_unixtime(date_add('day', -1, current_date)) Le tableau ci-dessous présente les résultats de la requête et de l'analyse. Les données renvoyées proviennent des journaux d'hier et incluent des champs tels que body_bytes_sent, client_ip, host et http_user_agent.
current_time
La fonction current_time renvoie l'heure actuelle et le fuseau horaire au format HH:MM:SS.Ms Time_zone.
Syntaxe
current_time
Type de valeur de retour
Type Time.
Exemple
Interroge l'heure actuelle et le fuseau horaire.
-
Instruction de requête et d'analyse (debug)
* | select current_time Résultat de la requête et de l'analyse : la colonne
_col0renvoie 22:34:24.034 Asia/Shanghai.
current_timestamp
La fonction current_timestamp renvoie la date, l'heure et le fuseau horaire actuels au format YYYY-MM-DD HH:MM:SS.Ms Time_zone.
Syntaxe
current_timestamp
Type de valeur de retour
Type Timestamp.
Exemple
Interroge les journaux d'hier.
-
Instruction de requête et d'analyse (debug)
* | SELECT * FROM log WHERE __time__ < to_unixtime(current_timestamp) AND __time__ > to_unixtime(date_add('day', -1, current_timestamp)) Le tableau suivant présente les résultats de la requête et de l'analyse. Ils incluent les données des journaux d'hier avec des champs tels que body_bytes_sent, client_ip, host et http_user_agent.
current_timezone
La fonction current_timezone renvoie le fuseau horaire actuel.
Syntaxe
current_timezone()
Type de valeur de retour
Type Varchar.
Exemple
Interroge le fuseau horaire actuel.
-
Instruction de requête et d'analyse (debug)
* | select current_timezone() Résultat de la requête et de l'analyse : la colonne
_col0renvoie Asia/Shanghai.
date
La fonction date permet d'extraire la partie date d'une expression datetime. Elle équivaut à cast(x as date). Pour plus d'informations, consultez la rubrique Fonctions de conversion de type.
Syntaxe
date(x)
Paramètre
|
Paramètre |
Description |
|
x |
Une expression de type |
Type de valeur de retour
Type Date.
Exemple
Cet exemple extrait la date de l'horodatage actuel.
-
Instruction de requête et d'analyse (debug)
* | SELECT current_timestamp, date(current_timestamp) Résultat de la requête et de l'analyse : la colonne
_col0renvoie l'horodatage complet, tandis que la colonne_col1renvoie la partie date, par exemple 2021-09-07.
date_format
La fonction date_format convertit une expression de type timestamp en chaîne selon le format spécifié.
Syntaxe
date_format(x, format)
Paramètre
|
Paramètre |
Description |
|
x |
Une expression de type |
|
format |
Le format cible pour l'expression de date et d'heure. Pour plus d'informations, consultez la section Spécificateurs de format. |
Type de valeur de retour
Type Varchar.
Exemple
Calcule les statuts et le nombre de requêtes Nginx, puis les affiche par ordre chronologique. L'instruction aligne d'abord les heures des journaux à la minute près à l'aide de date_trunc, convertit l'heure au format %H:%i via date_format, calcule le nombre de requêtes pour chaque code de statut par minute et affiche les résultats sous forme de graphique en aires empilées.
-
Instruction de requête et d'analyse (debug)
* | SELECT date_format(date_trunc('minute', __time__), '%H:%i') AS time, COUNT(1) AS count, status GROUP BY time, status ORDER BY time Résultat de la requête et de l'analyse

date_parse
La fonction date_parse convertit une chaîne au format spécifié en valeur de type timestamp.
Syntaxe
date_parse(x, format)
Paramètre
|
Paramètre |
Description |
|
x |
Une chaîne de date et d'heure. |
|
format |
Le format de la chaîne de date et d'heure en entrée. Pour plus d'informations, consultez la section Spécificateurs de format. |
Type de valeur de retour
Type Timestamp.
Exemple
Convertit les valeurs des champs StartTime et EndTime au type timestamp, puis calcule la différence de temps entre elles.
-
Instruction de requête et d'analyse
*| SELECT date_parse(StartTime, '%Y-%m-%d %H:%i') AS "StartTime", date_parse(EndTime, '%Y-%m-%d %H:%i') AS "EndTime", date_diff('hour', StartTime, EndTime) AS "Time Difference (hours)" Résultat de la requête et de l'analyse : la requête renvoie une valeur
StartTimede 2021-07-21 20:00:00.000, une valeurEndTimede 2021-07-21 21:00:00.000 et une différence de temps de 1 heure.
from_iso8601_date
La fonction from_iso8601_date convertit une chaîne de date au format ISO 8601 en valeur de type date.
Syntaxe
from_iso8601_date(x)
Paramètre
|
Paramètre |
Description |
|
x |
Une chaîne de date au format ISO 8601. |
Type de valeur de retour
Type Date.
Exemple
Convertit la valeur du champ time en expression de date de type date.
-
Exemple de champ
time:2020-05-03 -
Instruction de requête et d'analyse
* | select from_iso8601_date(time) Résultat de la requête et de l'analyse : la colonne
_col0renvoie 2020-05-03, qui est une valeur de typedate.
from_iso8601_timestamp
La fonction from_iso8601_timestamp convertit une chaîne d'horodatage au format ISO 8601 en valeur de type timestamp.
Syntaxe
from_iso8601_timestamp(x)
Paramètre
|
Paramètre |
Description |
|
x |
Une chaîne d'horodatage au format ISO 8601. |
Type de valeur de retour
Type Timestamp.
Exemple
Cet exemple convertit le champ time en valeur de type timestamp.
-
Exemple de champ
time:2020-05-03T17:30:08 -
Instruction de requête et d'analyse
* | select from_iso8601_timestamp(time) Résultat de la requête et de l'analyse : la valeur renvoyée dans la colonne _col0 est 2020-05-03 17:30:08.000 Asia/Shanghai, un horodatage de type timestamp avec fuseau horaire.
from_unixtime
La fonction from_unixtime convertit un horodatage Unix en valeur de type timestamp.
Syntaxe
-
Conversion en valeur d'horodatage sans informations de fuseau horaire.
from_unixtime(x) -
Conversion en valeur d'horodatage avec informations de fuseau horaire.
from_unixtime(x,time zone) -
Conversion en valeur d'horodatage avec informations de fuseau horaire, où hours et minutes spécifient le décalage du fuseau horaire.
from_unixtime(x, hours, minutes)
Paramètre
|
Paramètre |
Description |
|
x |
Un horodatage Unix. |
|
time zone |
Le fuseau horaire, par exemple |
|
hours |
La composante heure du décalage du fuseau horaire, par exemple |
|
minutes |
La composante minute du décalage du fuseau horaire, par exemple |
Type de valeur de retour
Type Timestamp.
Exemple
Convertit la valeur du champ time en expression datetime de type timestamp avec fuseau horaire.
-
Exemple de champ
time:1626774758 -
Instruction de requête et d'analyse
* | select from_unixtime(time,'Asia/Shanghai') Résultat de la requête et de l'analyse : la colonne
_col0renvoie 2021-07-20 17:52:38.000 Asia/Shanghai.
localtime
La fonction localtime renvoie l'heure locale au format HH:MM:SS.Ms.
Syntaxe
localtime
Type de valeur de retour
Type Time.
Exemple
Interroge l'heure locale.
-
Instruction de requête et d'analyse (debug)
* | select localtime Résultat de la requête et de l'analyse : la colonne
_col0renvoie 02:09:46.213.
localtimestamp
La fonction localtimestamp renvoie la date et l'heure locales au format YYYY-MM-DD HH:MM:SS.Ms Time_zone.
Syntaxe
localtimestamp
Type de valeur de retour
Type Timestamp.
Exemple
Interroge les journaux d'hier.
-
Instruction de requête et d'analyse (debug)
* | SELECT * FROM log WHERE __time__ < to_unixtime(localtimestamp) AND __time__ > to_unixtime(date_add('day', -1, localtimestamp)) Le tableau ci-dessous présente les résultats de la requête et de l'analyse. Ils se composent de données de journaux datant d'hier et incluent des champs tels que body_bytes_sent, client_ip, host et http_user_agent.
now
La fonction now renvoie la date et l'heure actuelles au format YYYY-MM-DD HH:MM:SS.Ms Time_zone. Elle constitue un alias de la fonction current_timestamp.
Syntaxe
now()
Type de valeur de retour
Type Timestamp.
Exemple
Interroge les journaux d'hier.
-
Instruction de requête et d'analyse (debug)
* | SELECT * FROM log WHERE __time__ < to_unixtime(now()) AND __time__ > to_unixtime(date_add('day', -1, now())) Le tableau ci-dessous présente les résultats de la requête et de l'analyse. Ils correspondent aux données des journaux d'hier, qui incluent des champs tels que body_bytes_sent, client_ip, host et http_user_agent.
to_iso8601
La fonction to_iso8601 convertit une expression de type date ou timestamp en une chaîne au format ISO 8601.
Syntaxe
to_iso8601(x)
Paramètre
|
Paramètre |
Description |
|
x |
Une expression de type |
Type de valeur renvoyée
Type Varchar.
Exemple
Cet exemple utilise la fonction to_iso8601 pour convertir la valeur issue de current_timestamp en une chaîne au format ISO 8601.
-
Instruction de requête et d'analyse (debug)
* | select to_iso8601(current_timestamp) AS ISO8601 Résultat de la requête et de l'analyse : la colonne
ISO8601renvoie 2021-09-02T16:57:56.964+08:00.
to_unixtime
La fonction to_unixtime convertit une expression de type timestamp en un horodatage Unix.
Syntaxe
to_unixtime(x)
Paramètre
|
Paramètre |
Description |
|
x |
Une expression de type |
Type de valeur renvoyée
Type Double.
Exemple
Interroge les journaux de la veille.
-
Instruction de requête et d'analyse (debug)
* | SELECT * FROM log WHERE __time__ < to_unixtime(now()) AND __time__ > to_unixtime(date_add('day', -1, now())) Le tableau ci-dessous présente les résultats de la requête et de l'analyse. La requête a renvoyé les données de journal de la veille, incluant des champs tels que body_bytes_sent, client_ip, host et http_user_agent.
current_unixtimestamp
Cette fonction renvoie l'horodatage Unix actuel du système. Un horodatage Unix correspond au nombre total de secondes écoulées depuis le 1er janvier 1970 à 00:00:00 UTC (Temps universel coordonné).
Syntaxe
current_unixtimestamp()
Valeur renvoyée
Type de valeur renvoyée :
BIGINTDescription de la valeur renvoyée : Renvoie un entier représentant le nombre de secondes écoulées depuis l'époque Unix.
Précision : La précision par défaut est à la seconde.
Exemple
-
Exemple 1 : obtenir l'horodatage actuel.
Cette utilisation de base est courante pour enregistrer les heures d'insertion des données.
* | extend now_ts =current_unixtimestamp() -- Sample output: 1734913028 -
Exemple 2 : conversion de format
Elle est souvent utilisée conjointement avec la fonction
from_unixtimepour reconvertir un horodatage en un format de date lisible par l'homme.* | extend readable_time = date_format(from_unixtime(cast(current_unixtimestamp() as double)), '%Y-%m-%d %H:%i:%s') -- Sample output: 2025-12-23 00:17:08
Fonctions de date et d'heure
Fonction day
La fonction day renvoie le jour du mois à partir d'une expression datetime et équivaut à la fonction day_of_month.
Syntaxe
day(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression de type timestamp ou date. |
Type de valeur renvoyée
bigint
Exemple
Cet exemple utilise la fonction current_date pour obtenir la date actuelle, puis la fonction day pour renvoyer le jour du mois.
-
Instruction de requête et d'analyse (Debug)
* | SELECT current_date, day(current_date) Résultats de la requête et de l'analyse : la colonne _col0 renvoie la date actuelle et la colonne _col1 renvoie 7, ce qui indique le septième jour du mois.
Fonction day_of_month
La fonction day_of_month renvoie le jour du mois à partir d'une expression datetime et équivaut à la fonction day.
Syntaxe
day_of_month(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression de type timestamp ou date. |
Type de valeur renvoyée
bigint
Exemple
Cet exemple utilise la fonction current_date pour obtenir la date actuelle et la fonction day_of_month pour renvoyer le jour du mois.
-
Instruction de requête (Debug)
* | SELECT current_date, day_of_month(current_date) Résultats de la requête et de l'analyse : la colonne _col0 renvoie la date actuelle et la colonne _col1 renvoie 7, soit le jour du mois.
Fonction day_of_week
La fonction day_of_week renvoie un entier représentant le jour de la semaine à partir d'une expression de type date ou datetime.
Syntaxe
day_of_week(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression de type datetime ou date. |
Type de retour
Le type de retour est bigint.
Exemple
Cet exemple récupère la date actuelle à l'aide de la fonction current_date, puis extrait le jour de la semaine à l'aide de la fonction day_of_week.
-
Instruction de requête et d'analyse (Debug)
* | SELECT current_date, day_of_week(current_date) Résultats de la requête et de l'analyse : la colonne _col0 renvoie la date actuelle et la colonne _col1 renvoie 2, ce qui représente le deuxième jour de la semaine (mardi).
Fonction day_of_year
La fonction day_of_year renvoie le jour de l'année à partir d'une expression datetime.
Syntaxe
day_of_year(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression de type timestamp ou date. |
Type de retour
bigint
Exemple
Cet exemple utilise la fonction current_date pour obtenir la date actuelle et la fonction day_of_year pour renvoyer le jour de l'année.
-
Instruction de requête (Debug)
* | SELECT current_date, day_of_year(current_date) Résultats de la requête et de l'analyse : la colonne _col0 renvoie la date actuelle et la colonne _col1 renvoie 250, ce qui signifie que la date actuelle correspond au 250e jour de l'année.
Fonction dow
La fonction dow renvoie le jour de la semaine à partir d'une expression datetime. Cette fonction équivaut à la fonction day_of_week.
Syntaxe
dow(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression de type datetime. |
Type de valeur renvoyée
bigint
Exemple
Cet exemple utilise la fonction dow pour extraire le jour de la semaine à partir de la date actuelle.
-
Instruction de requête et d'analyse (Debug)
* | SELECT current_date, dow(current_date) Résultats de la requête et de l'analyse : la colonne _col0 renvoie la date actuelle et la colonne _col1 renvoie 2, ce qui représente le deuxième jour de la semaine (mardi).
Fonction doy
La fonction doy renvoie le jour de l'année à partir d'une expression datetime. Cette fonction équivaut à la fonction day_of_year.
Syntaxe
doy(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une valeur de type |
Type de valeur renvoyée
bigint
Exemple
Cet exemple utilise la fonction current_date pour obtenir la date actuelle et la fonction doy pour renvoyer le jour de l'année.
-
Instruction de requête (Debug)
* | SELECT current_date, doy(current_date) Résultats de la requête et de l'analyse : la colonne
_col0renvoie la date actuelle et la colonne_col1renvoie 250, ce qui indique que la date actuelle correspond au 250e jour de l'année.
Fonction extract
La fonction extract extrait une partie spécifique, telle que l'année ou l'heure, d'une expression de date ou d'heure en fonction du champ spécifié.
Syntaxe
extract(field from x)
Paramètres
|
Paramètre |
Description |
|
field |
La partie à extraire. Les valeurs valides incluent |
|
x |
Une expression qui renvoie une valeur de type |
Type de valeur renvoyée
Renvoie une valeur de type bigint.
Exemple
Cet exemple extrait l'année de la date renvoyée par la fonction current_date.
-
Instruction de requête (Debug)
* | SELECT extract(year from current_date) Résultats de la requête et de l'analyse : la colonne
_col0renvoie l'année extraite : 2021.
Fonction hour
La fonction hour extrait l'heure (0-23) d'une expression datetime.
Syntaxe
hour(x)
Paramètres
|
Paramètre |
Description |
|
x |
L'entrée doit être de type timestamp. |
Type de valeur renvoyée
La fonction renvoie une valeur de type bigint.
Exemple
Cet exemple utilise la fonction current_timestamp pour obtenir l'horodatage actuel et la fonction hour pour extraire l'heure.
-
Instruction de requête (Debug)
* | SELECT current_timestamp, hour(current_timestamp) Résultat de la requête et de l'analyse : la colonne _col0 renvoie l'horodatage actuel, tandis que la colonne _col1 renvoie l'heure actuelle : 11.
Fonction minute
La fonction minute renvoie la composante minute (de 0 à 59) d'un horodatage.
Syntaxe
minute(x)
Paramètres
|
Paramètre |
Description |
|
x |
Le paramètre doit être de type timestamp. |
Type de valeur renvoyée
Renvoie une valeur de type bigint.
Exemple
Cet exemple récupère l'horodatage actuel à l'aide de la fonction current_timestamp, puis extrait la valeur des minutes.
-
Instruction de requête et d'analyse (Debug)
* | SELECT current_timestamp, minute(current_timestamp) Résultats de la requête et de l'analyse : la colonne _col0 contient l'horodatage actuel et la colonne _col1 contient la composante minute, par exemple 17.
Fonction month
La fonction month extrait le mois d'une expression de date et d'heure.
Syntaxe
month(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression de type date ou timestamp. |
Type de valeur renvoyée
bigint
Exemple
Cet exemple récupère l'horodatage actuel à l'aide de la fonction current_timestamp, puis extrait le mois avec la fonction month.
-
Instruction de requête (Déboguer)
* | SELECT current_timestamp, month(current_timestamp) Résultats de la requête et de l'analyse : la colonne
_col0renvoie l'horodatage actuel et la colonne_col1renvoie le mois actuel (9).
Fonction quarter
La fonction quarter renvoie le trimestre d'une date.
Syntaxe
quarter(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression de type date ou timestamp. |
Type de valeur renvoyée
bigint
Exemple
Cet exemple calcule le trimestre de la date actuelle en utilisant les fonctions current_timestamp et quarter.
-
Instruction de requête (Déboguer)
* | SELECT current_timestamp,quarter(current_timestamp) Résultats de la requête et de l'analyse : la colonne
_col0renvoie l'horodatage actuel et la colonne_col1renvoie 3, correspondant au trimestre actuel.
Fonction second
La fonction second renvoie la composante « seconde » d'une expression d'horodatage.
Syntaxe
second(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression d'horodatage. |
Type de valeur renvoyée
Une valeur bigint.
Exemple
Cet exemple utilise la fonction second pour extraire les secondes de la valeur renvoyée par la fonction current_timestamp.
-
Instruction de requête (déboguer)
* | SELECT current_timestamp,second(current_timestamp) Résultats de la requête et de l'analyse : la colonne
_col0renvoie l'horodatage actuel et la colonne_col1renvoie 41, correspondant à la seconde actuelle.
Fonction timezone_hour
Cette fonction renvoie le décalage horaire du fuseau horaire en heures.
Syntaxe
timezone_hour(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression d'horodatage. |
Type de retour
Une valeur bigint.
Exemple
Cet exemple récupère le décalage horaire du fuseau horaire de l'heure actuelle.
-
Instruction de requête et d'analyse (Déboguer)
* | SELECT current_timestamp, timezone_hour(current_timestamp) Résultats de la requête et de l'analyse : la colonne
_col0renvoie l'horodatage actuel et la colonne_col1renvoie 8, correspondant au décalage horaire du fuseau horaire (UTC+8).
Fonction Timezone_minute
La fonction timezone_minute calcule le décalage en minutes d'un fuseau horaire.
Syntaxe
timezone_minute(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression de type timestamp. |
Type de retour
Une valeur de type bigint.
Exemple
Utilisez current_timestamp pour obtenir l'horodatage actuel, puis utilisez timezone_minute pour calculer le décalage en minutes du fuseau horaire.
-
Instruction de requête et d'analyse (Déboguer)
* | SELECT current_timestamp,timezone_minute(current_timestamp) Résultats de la requête et de l'analyse : la colonne
_col0renvoie l'horodatage actuel et la colonne_col1renvoie 0, correspondant au décalage en minutes du fuseau horaire.
Fonction week
La fonction week renvoie le numéro de la semaine dans l'année pour une date donnée. Elle est équivalente à la fonction week_of_year.
Syntaxe
week(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression de type date ou timestamp. |
Type de valeur renvoyée
bigint
Exemple
Utilisez la fonction current_timestamp pour obtenir la date et l'heure actuelles. Ensuite, utilisez la fonction week pour calculer le numéro de la semaine actuelle dans l'année.
-
Instruction de requête (Déboguer)
* | SELECT current_timestamp, week(current_timestamp) Résultats de la requête et de l'analyse : la colonne
_col0renvoie l'horodatage actuel et la colonne_col1renvoie 36, correspondant au numéro de la semaine actuelle dans l'année.
Fonction week_of_year
La fonction week_of_year, alias de la fonction week, renvoie le numéro de la semaine dans l'année pour une date donnée.
Syntaxe
week_of_year(x)
Paramètres
|
Paramètre |
Description |
|
x |
Le paramètre doit être de type date ou timestamp. |
Type de valeur renvoyée
bigint
Exemple
Cet exemple récupère le numéro de la semaine dans l'année à partir de l'horodatage actuel.
-
Instruction de requête et d'analyse (déboguer)
* | SELECT current_timestamp, week_of_year(current_timestamp) Résultats de la requête et de l'analyse : la colonne
_col0renvoie l'horodatage actuel et la colonne_col1renvoie 36, indiquant que la date actuelle se situe dans la 36ᵉ semaine de l'année.
Fonction Year
La fonction year extrait l'année d'une date ou d'un horodatage.
Syntaxe
year(x)
Paramètres
|
Paramètre |
Description |
|
x |
Le paramètre doit être de type |
Type de valeur renvoyée
Renvoie une valeur bigint.
Exemple
Cet exemple utilise la fonction current_timestamp pour obtenir la date et l'heure actuelles, ainsi que la fonction year pour extraire l'année.
-
Instruction de requête et d'analyse (déboguer)
* | SELECT current_timestamp,year(current_timestamp) Résultats de la requête et de l'analyse : la colonne
_col0renvoie l'horodatage actuel et la colonne_col1renvoie l'année actuelle.
Fonction year_of_week
La fonction year_of_week renvoie l'année d'une date donnée selon le système de dates hebdomadaires ISO. Cette fonction est équivalente à la fonction yow.
Syntaxe
year_of_week(x)
Paramètres
|
Paramètre |
Description |
|
x |
Une expression de type date ou timestamp. |
Type de valeur renvoyée
bigint.
Exemples
Cet exemple utilise la fonction year_of_week conjointement avec la fonction current_timestamp pour renvoyer l'année de la date actuelle selon le système de dates hebdomadaires ISO.
-
Instruction de requête et d'analyse (déboguer)
* | SELECT current_timestamp,year_of_week(current_timestamp) Résultats de la requête et de l'analyse : la colonne
_col0renvoie l'horodatage actuel et la colonne_col1renvoie l'année selon le système de dates hebdomadaires ISO, par exemple 2021.
Fonction yow
La fonction yow renvoie l'année d'une date selon le système de dates hebdomadaires ISO. Cette fonction est un alias de la fonction year_of_week.
Syntaxe
yow(x)
Paramètres
|
Paramètre |
Description |
|
x |
La valeur à évaluer, qui doit être une date ou un horodatage. |
Type de valeur renvoyée
La fonction renvoie une valeur de type bigint.
Exemple
Cet exemple récupère la date et l'heure actuelles à l'aide de la fonction current_timestamp. Il utilise ensuite la fonction yow pour renvoyer l'année selon le système de dates hebdomadaires ISO.
-
Instruction de requête (Déboguer)
* | SELECT current_timestamp, yow(current_timestamp) Résultats de la requête et de l'analyse : la colonne
_col0renvoie l'horodatage actuel et la colonne_col1renvoie l'année actuelle selon le système de dates hebdomadaires ISO.
Fonctions d'intervalle de temps
Fonction date_trunc
La fonction date_trunc tronque une expression de date et d'heure à une unité de temps spécifiée. Cette fonction est couramment utilisée pour l'agrégation et l'analyse basées sur le temps.
Syntaxe
date_trunc(unit, x)
Paramètres
|
Paramètre |
Description |
|
unit |
L'unité de temps. Les valeurs valides sont |
|
x |
Une expression de date et d'heure. |
La fonction date_trunc agrège les données uniquement à des intervalles de temps fixes, tels que par minute ou par heure. Pour regrouper les données selon des dimensions temporelles flexibles, comme toutes les 5 minutes, utilisez l'opérateur modulo.
* | SELECT count(1) AS pv, __time__ - __time__ %300 AS time GROUP BY time LIMIT 100
Type de retour
Le type de retour est identique à celui du paramètre x.
Exemple
Calcule le temps de requête moyen par minute, puis groupe et trie les résultats par temps.
-
Instruction de requête et d'analyse (Déboguer)
* | SELECT date_trunc('minute', __time__) AS time, truncate (avg(request_time)) AS avg_time, current_date AS date GROUP BY time ORDER BY time DESC LIMIT 100 Le résultat de la requête et de l'analyse inclut la colonne time (alignée à la minute), la colonne avg_time (le temps de requête moyen) et la colonne date (la date actuelle).
**Fonction date_add**
La fonction date_add ajoute ou soustrait un intervalle de temps spécifié à une valeur de date ou d'heure.
Syntaxe
date_add(unit, n, x)
Paramètres
|
Paramètre |
Description |
|
unit |
L'unité de temps. Les valeurs valides sont |
|
n |
L'intervalle de temps à ajouter. Une valeur négative soustrait l'intervalle. |
|
x |
Une expression de date et d'heure de type |
Type de retour
Une valeur de type timestamp.
Exemple
Interrogez les journaux de la veille.
-
Instruction de requête et d'analyse (Déboguer)
* | SELECT * FROM log WHERE __time__ < to_unixtime(current_timestamp) AND __time__ > to_unixtime(date_add('day', -1, current_timestamp)) Le résultat de la requête et de l'analyse contient les données de journal de la veille, y compris des champs tels que body_bytes_sent, client_ip, host et http_user_agent.
**Fonction date_diff**
La fonction date_diff renvoie la différence entre deux expressions de date ou d'heure.
Syntaxe
date_diff(unit, x, y)
Paramètres
|
Paramètre |
Description |
|
unit |
L'unité de temps. Les valeurs valides sont |
|
x |
Une expression de date et d'heure de type |
|
y |
Une expression de date et d'heure de type |
Type de retour
Une valeur de type bigint.
Exemple
Calcule la durée d'utilisation du serveur en fonction des champs UsageStartTime et UsageEndTime.
-
Instruction de requête et d'analyse
* | SELECT date_diff('hour', UsageStartTime, UsageEndTime) AS "时间差(小时)" La requête renvoie une différence de temps de 24 heures.
Fonction de complétion de séries temporelles
Fonction time_series
La fonction time_series comble les points de données manquants dans la fenêtre de temps d'une requête.
La fonction time_series doit être utilisée avec les clauses GROUP BY et ORDER BY. La clause ORDER BY ne prend pas en charge l'ordre décroissant (DESC). Si la fonction est utilisée dans une sous-requête, la requête externe ne peut pas inclure de clauses GROUP BY ou ORDER BY.
Syntaxe
time_series(x, window_time, format, padding_data)
Paramètres
|
Paramètre |
Description |
|
x |
La colonne de temps, telle que |
|
window_time |
La taille de la fenêtre. L'unité peut être |
|
format |
Le format d'heure du résultat. Pour plus d'informations, consultez les Spécifications de format. |
|
padding_data |
Spécifie comment remplir les valeurs manquantes. Les valeurs valides incluent :
|
Type de retour
Une valeur de type varchar.
Exemple
Complétez les données avec une granularité temporelle de 2 heures et remplissez les valeurs manquantes par 0.
-
Instruction de requête et d'analyse (Déboguer)
* | select * from (select time_series(__time__, '2h', '%Y-%m-%d %H:%i:%s', '0') as time, count(*) as num from log group by time order by time) a limit 100 Le tableau suivant présente les résultats de la requête et de l'analyse. La requête renvoie la colonne time avec une granularité temporelle de 2 heures et la colonne num correspondante.
Spécificateurs de format
|
Format |
Description |
|
%a |
Le nom abrégé du jour de la semaine. Par exemple, |
|
%b |
Le nom abrégé du mois. Par exemple, |
|
%c |
Le mois, sous forme de nombre décimal. Plage : 1 à 12. |
|
%D |
Le jour du mois avec un suffixe ordinal anglais, tel que |
|
%d |
Le jour du mois, sous forme de nombre décimal complété par des zéros. Plage : 01 à 31. |
|
%e |
Le jour du mois, sous forme de nombre décimal. Plage : 1 à 31. |
|
%H |
L'heure (format 24 heures), sous forme de nombre décimal complété par des zéros. Plage : 00 à 23. |
|
%h |
L'heure (format 12 heures), sous forme de nombre décimal complété par des zéros. Plage : 01 à 12. |
|
%i |
La minute, sous forme de nombre décimal complété par des zéros. Plage : 00 à 59. |
|
%j |
Le jour de l'année, sous forme de nombre décimal complété par des zéros. Plage : 001 à 366. |
|
%k |
L'heure (format 24 heures), sous forme de nombre décimal. Plage : 0 à 23. |
|
%l |
L'heure (format 12 heures), sous forme de nombre décimal. Plage : 1 à 12. |
|
%M |
Le nom complet du mois. Par exemple, |
|
%m |
Le mois, sous forme de nombre décimal complété par des zéros. Plage : 01 à 12. |
|
%p |
|
|
%r |
L'heure au format 12 heures ( |
|
%S |
La seconde, sous forme de nombre décimal complété par des zéros. Plage : 00 à 59. |
|
%s |
Le nombre de secondes depuis l'époque UNIX. |
|
%f |
La microseconde, sous forme de nombre décimal complété par des zéros. Plage : 000000 à 999999. |
|
%T |
L'heure au format 24 heures ( |
|
%v |
Le numéro de la semaine de l'année (01-53), le lundi étant le premier jour de la semaine. |
|
%W |
Le nom complet du jour de la semaine. Par exemple, |
|
%Y |
L'année à quatre chiffres, telle que |
|
%y |
L'année à deux chiffres, telle que |
|
%% |
Le caractère littéral |
Unité
|
Unité |
Description |
|
millisecond |
Milliseconde |
|
second |
Seconde |
|
minute |
Minute |
|
hour |
Heure |
|
day |
Jour |
|
week |
Semaine |
|
month |
Mois |
|
quarter |
Trimestre |
|
year |
Année |