La recherche avancée permet d'utiliser les fonctions suivantes pour convertir, formater et agréger les données de ressources.
to_char(timestamp/timestamptz, text)
Type de valeur renvoyée : TEXT.
Description : convertit un horodatage en chaîne de caractères. La plage temporelle par défaut s'étend de 1925 à 2282.
-
Format
Le premier paramètre spécifie l'horodatage à convertir et le second définit le format de conversion.
YYYYreprésente l'année,MMle mois,DDle jour,HHl'heure,MIla minute etSSla seconde.La fonction to_char permet de convertir un horodatage au format 24 heures ou 12 heures. Utilisez
HH24pour le format 24 heures etHH12pour le format 12 heures. Le format 12 heures est appliqué par défaut.
-
Exemples
Scénario
Requête
Réponse
Convertir l'horodatage actuel en chaîne au format 24 heures.
SELECT TO_CHAR(NOW(), 'YYYY-MM-DD');20221208
to_timestamp(text, text)
Type de valeur renvoyée : TIMESTAMPTZ.
Description : convertit une chaîne de caractères en horodatage. La plage temporelle par défaut s'étend de 1925 à 2282.
Format : le premier paramètre indique la chaîne à convertir et le second précise le format de conversion.
-
Exemples
Scénario
Requête
Réponse
Convertir une valeur de champ de type TEXT en date.
SELECT TO_TIMESTAMP(properties ->> 'ExpireTime', 'YYYY-MM-DD') FROM resources WHERE resource_type = 'ACS::RDS::DBInstance';2001-09-28
clock_timestamp()
Type de valeur renvoyée : TIMESTAMPTZ.
Description : renvoie l'heure actuelle.
-
Exemples
Scénario
Requête
Réponse
Interroger l'heure actuelle.
SELECT CLOCK_TIMESTAMP();2023-09-02T11:47:19Z
concat(param1 [,param2]...)
Type de valeur renvoyée : TEXT.
Description : concatène toutes les valeurs, à l'exception des valeurs NULL.
Format : les paramètres indiquent les valeurs à concaténer. Ceux-ci peuvent être de n'importe quel type de données. Le premier paramètre est obligatoire, tandis que les autres sont facultatifs.
-
Exemples
Scénario
Requête
Réponse
Concaténer toutes les valeurs, en ignorant les valeurs NULL.
SELECT CONCAT('abcde', 2, NULL, 22);concat
--------
abcde222
concat_ws(separator, param1 [,param2]...)
Type de valeur renvoyée : TEXT.
Description : concatène toutes les valeurs, sauf les valeurs NULL, en utilisant le premier paramètre comme délimiteur.
Format : le premier paramètre spécifie le délimiteur. Les paramètres suivants indiquent les valeurs à concaténer. Ces valeurs peuvent être de n'importe quel type de données. Les deux premiers paramètres sont obligatoires, tandis que les autres sont facultatifs.
-
Exemples
Scénario
Requête
Réponse
Concaténer toutes les valeurs avec un délimiteur, en omettant les valeurs NULL.
SELECT concat_ws(',', 'abcde', 2, NULL, 22);concat_ws
--------
abcde,2,22
substring()
Type de valeur renvoyée : TEXT.
Description : extrait une sous-chaîne d'une chaîne de caractères.
-
Format :
substring(string[FROM start][FOR length])ousubstring(string FROM pattern).string : obligatoire. La chaîne de caractères.
start : facultatif. La position de début de la sous-chaîne. La valeur par défaut est 1, ce qui correspond au début de la chaîne.
length : facultatif. La longueur de la sous-chaîne. Si ce paramètre n'est pas spécifié, la sous-chaîne extraite s'étend de la position de départ jusqu'à la fin de la chaîne.
pattern : obligatoire. Une expression régulière. Les expressions régulières POSIX (Portable Operating System Interface) sont utilisées dans la clause
FROM patternet les expressions régulières SQL dans la clauseSIMILAR pattern.
-
Exemples
Scénario
Requête
Réponse
Extraire une sous-chaîne spécifique d'une chaîne de caractères.
SELECT SUBSTRING('Thomas' FROM 2 FOR 3);substring
-------
hom
Extraire une sous-chaîne correspondant à une expression régulière POSIX d'une chaîne de caractères.
SELECT SUBSTRING('Thomas' FROM '...$');substring
--------
mas
char_length(string)
Type de valeur renvoyée : INT.
Description : renvoie le nombre de caractères d'une chaîne.
-
Exemples
Scénario
Requête
Réponse
Interroger la longueur d'une chaîne de caractères.
SELECT CHAR_LENGTH('jose');4
length(string)
Type de valeur renvoyée : INT.
Description : renvoie la longueur en octets d'une chaîne. Avec l'encodage UTF-8, un caractère chinois occupe trois octets, tandis qu'un chiffre ou une lettre n'en occupe qu'un seul.
-
Exemples
Scénario
Requête
Réponse
Interroger la longueur d'une chaîne de caractères.
SELECT LENGTH('jose');4
lower(string)
Type de valeur renvoyée : TEXT.
Description : convertit une chaîne de caractères en minuscules.
-
Exemples
Scénario
Requête
Réponse
Convertir une chaîne de caractères en minuscules.
SELECT LOWER('TOM');tom
upper(string)
Type de valeur renvoyée : TEXT.
Description : convertit une chaîne de caractères en majuscules.
-
Exemples
Scénario
Requête
Réponse
Convertir une chaîne de caractères en majuscules.
SELECT UPPER('tom');TOM
starts_with(string, string)
Type de valeur renvoyée : BOOLEAN.
Description : vérifie si une chaîne commence par un préfixe donné. Renvoie
truesi la chaîne commence par le préfixe, oufalsedans le cas contraire.-
Exemples
Scénario
Requête
Réponse
Vérifier si la chaîne alphabet commence par alph.
SELECT starts_with('alphabet', 'alph');true
case
Description : évalue les conditions dans l'ordre et renvoie la valeur associée à la première condition vraie.
-
Exemples
Scénario
Requête
Réponse
Convertir le statut d'une instance Elastic Compute Service (ECS).
SELECT resource_id, CASE properties ->> 'Status' WHEN 'ECS Pending' THEN 'Creating' WHEN 'ECS Running' THEN 'Running' WHEN 'ECS Starting' THEN 'Starting' WHEN 'ECS Stopping' THEN 'Stopping' WHEN 'ECS Stopped' THEN 'Stopped' END AS "Status", FROM resources WHERE resource_type = 'ACS::ECS::Instance' ORDER BY resource_id;resource_id Status ------------+----------- 1 i-xxx Running
count
Type de valeur renvoyée : INT.
Description : renvoie le nombre de lignes correspondant aux conditions spécifiées.
-
Exemples
Scénario
Requête
Réponse
Calculer le nombre de ressources Alibaba Cloud.
SELECT count(*) FROM resources;1123
max
Description : renvoie la valeur maximale d'une expression numérique.
-
Exemples
Scénario
Requête
Réponse
Interroger la date de création la plus récente des ressources.
SELECT MAX(create_time) FROM resources;2023-09-13T07:32:37Z
min
Description : renvoie la valeur minimale d'une expression numérique.
-
Exemples
Scénario
Requête
Réponse
Interroger la date de création la plus ancienne des ressources.
SELECT MIN(create_time) FROM resources;2021-08-20T02:20:37Z
jsonb_array_elements(jsonb)
Description : développe un tableau JSONB en un ensemble de valeurs JSONB.
-
Exemples
Scénario
Requête
Réponse
Interroger toutes les adresses IP.
SELECT DISTINCT JSONB_ARRAY_ELEMENTS(ip_addresses) AS ip_address FROM resourcesip_address ----------- "172.X.X.1" "172.X.X.2" "172.X.X.3"
jsonb_array_elements_text(jsonb)
Description : développe un tableau JSONB en un ensemble de valeurs TEXT.
-
Exemples
Scénario
Requête
Réponse
Interroger toutes les adresses IP.
SELECT DISTINCT JSONB_ARRAY_ELEMENTS_TEXT(ip_addresses) AS ip_address FROM resourcesip_address ----------- 172.X.X.1 172.X.X.2 172.X.X.3
jsonb_object_keys(jsonb)
Description : renvoie un ensemble de clés présentes dans l'objet JSONB le plus externe.
-
Exemples
Scénario
Requête
Réponse
Interroger toutes les clés de tag.
SELECT DISTINCT JSONB_OBJECT_KEYS(tags) AS tag_key FROM resourcestag_key ------------------ key_1 key_2