DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Editeurs / Editeur de requêtes / SQL
  • Présentation
  • Commandes utilisables
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Présentation
WINDEV, WEBDEV et WINDEV Mobile permettent d'exécuter simplement des requêtes en code SQL. Ces requêtes peuvent être :
Deux modes d'exécution des requêtes SQL sont disponibles sous WINDEV, WEBDEV et WINDEV Mobile :
  • Exécution d'une requête SQL avec vérification du code SQL : cette option est disponible par défaut pour toutes les requêtes SQL exécutées depuis WINDEV, WEBDEV et WINDEV Mobile. Le code SQL de la requête doit utiliser uniquement les commandes listées ci-dessous. Dans ce cas, le moteur HFSQL effectue une vérification du code SQL de la requête.
  • Exécution d'une requête SQL sans vérification du code SQL (utilisation de la constante hRequêteSansCorrection) : Cette option est conseillée pour les requêtes exécutées via un accès natif ou OLE DB. Dans ce cas, le moteur HFSQL n'effectue aucune vérification de la requête. Cette option doit être utilisée si la requête comporte des ordres spécifiques à un type de connexion (Oracle, SQL Server, ...). Toutes les commandes SQL supportées par la base de données accédée sont utilisables.
Remarque : L'option hRequêteSansCorrection est également disponible lors du test d'une requête depuis l'éditeur de requêtes :
  • pour une requête de sélection, cliquez sur le bouton "Avancé" de la fenêtre de description. Dans l'onglet "hRequêteSansCorrection", cochez l'option "Exécuter avec hRequêteSansCorrection en mode test". Vous pouvez choisir la connexion à utiliser pour l'exécution de la requête en mode test.
  • pour une requête d'insertion, de modification ou de suppression, affichez l'onglet "Général" de la fenêtre de description et cochez l'option "Exécuter avec hRequêteSansCorrection en mode test". Sélectionnez ensuite la connexion à utiliser en mode test.
Commandes utilisables
Les "commandes SQL" (instructions, fonctions, clauses, ...) utilisables dans une requête SQL vérifiée par le moteur HFSQL sont les suivantes :
ADD_MONTHSAjoute des mois à la date spécifiée.
ALL
ANDCombine plusieurs conditions de sélection (l'une et l'autre).
ANYUtilisé dans les sous-requêtes
ASCrée un alias pour chaque rubrique et chaque fichier utilisé.
ASCUtilisé avec la clause ORDER BY
Définit l'ordre ascendant.
ASCIIRenvoie le code ASCII :
  • soit d'un caractère.
  • soit du premier caractère d'une chaîne.
ATAN2Retourne l'arctangente des variables X et Y.
AVGCalcule la moyenne d'un ensemble de valeurs.
BEGINDébute une transaction.
BEGIN WORKDébute une transaction.
BEGIN TRANSACTIONDébute une transaction.
BETWEENSélectionne des enregistrements dont la valeur d'une rubrique appartient à une plage de valeurs.
BINRenvoie la chaîne de caractères représentant "entier" en binaire.
BITANDRenvoie AND au niveau du bit pour deux expressions numériques.
BITANDNOTRenvoie AND puis NOT au niveau du bit pour deux expressions numériques.
BITNOTRenvoie la négation au niveau du bit d’une expression numérique.
BITORRenvoie OR au niveau du bit pour deux expressions numériques.
BITXORRenvoie XOR au niveau du bit pour deux expressions numériques.
BOTTOMRenvoie uniquement les n derniers enregistrements du résultat d'une requête.
BTRIMSupprime une chaîne dans une autre chaîne à partir du début et de la fin.
CASERenvoie la valeur correspondant à la condition.
CASTPermet de convertir un nombre dans un autre type.
CBRTRenvoie la racine cubique d'un nombre.
CEILING
CEIL
Renvoie la valeur arrondie par excès d'un nombre.
CHAR_LENGTHRenvoie la taille (le nombre de caractères) d'une expression.
CHARACTER_LENGTHRenvoie la taille (le nombre de caractères) d'une expression.
COALESCERetourne la première expression non nulle parmi ses arguments.
COMMITValide une transaction.
COMMIT TRANSACTIONValide une transaction.
COMMIT WORKValide une transaction.
CONCATConcatène plusieurs chaînes entre elles.
CONVERTConvertit une chaîne de caractères d'un alphabet vers un autre.
COUNTRenvoie le nombre d'enregistrements présents dans un fichier ou dans un groupement d'enregistrements.
CREATE TABLEDécrit et crée un fichier / une table.
CURRENT_TIMESTAMPRenvoie la date et l'heure locale du serveur.
CURRENT_USERRenvoie le nom de l'utilisateur de la connexion en cours.
DATEADDAjoute une valeur à la date de départ et renvoie la nouvelle date correspondante.
DATEDIFFCalcule la différence entre deux dates dans l'unité spécifiée. La valeur de retour est un entier signé.
DATEDIFFBIGCalcule la différence entre deux dates dans l'unité spécifiée. La valeur de retour est un entier très grand signé.
DATEFROMPARTSRenvoie une date correspondant aux éléments spécifiés.
DATETIMEFROMPARTSRenvoie une date-heure correspondant aux éléments spécifiés.
DATEPARTRenvoie l'entier correspondant à la partie demandée de la date-heure spécifiée.
DAYRenvoie le jour du mois, c'est-à-dire un nombre compris entre 1 et 31.
DAYOFMONTHRenvoie le jour dans le mois (compris entre 1 et 31).
DAYOFWEEKRenvoie le jour dans la semaine (1 pour Dimanche, 2 pour Lundi, etc.).
DAYOFYEARRenvoie le jour dans l'année (compris entre 1 et 366).
DECODERenvoie la valeur correspondant à la condition.
DEGREESConvertit en degrés un angle exprimé en radians.
DELETESupprime des enregistrements d'un fichier.
DESCUtilisé avec la clause ORDER BY
Définit l'ordre descendant.
DISTINCTUtilisé avec l'instruction SELECT
Supprime les enregistrements dupliqués (doublons) du résultat de la requête.
DIVEffectue une division.
DROP TABLESupprime physiquement un fichier / une table.
ELTRenvoie la nième chaîne d'une liste de chaînes.
EOMONTHxx
EVERYRenvoie Vrai si tous les arguments sont vérifiés et vrais.
EXISTSUtilisé dans les sous-requêtes
FIELDRetourne l'index de la chaîne à rechercher dans la liste.
FIND_IN_SETRetourne la position d'une chaîne dans une liste de valeurs.
FROMUtilisé avec l'instruction SELECT
Définit les fichiers utilisés.
Utilisé avec l'instruction DELETE
Définit les fichiers utilisés.
FULL OUTER JOINRéalise une jointure externe.
GETDATERenvoie la date et l'heure locale du serveur.
GETUTCDATERenvoie la date et l'heure UTC du serveur.
GREATESTAvec deux arguments ou plus, retourne la valeur la plus grande.
GROUP BYClasse une sélection d'enregistrement par groupe.
GROUP_CONCATRegroupe dans une même chaine de caractères les différentes valeurs non nulles d’une rubrique issue d'une série d'enregistrements.
HAVINGPermet de spécifier une ou plusieurs conditions sur des groupes d'enregistrements générés par la clause GROUP BY.
HEXRenvoie en hexadécimal un entier (exprimé en base 10).
INSélectionne des enregistrements dont les valeurs correspondent à une liste de valeurs spécifiée.
Utilisé dans les sous-requêtes.
INITCAPRenvoie une chaîne contenant la première lettre de chaque mot en majuscules.
INNER JOINRéalise une jointure interne.
INSERTAjoute un enregistrement dans un fichier de données.
INSTRRenvoie la position d'une chaîne de caractères.
INTERSECTPermet de combiner des requêtes de sélection (instruction SELECT).
INTOUtilisé avec l'instruction INSERT
Définit le fichier utilisé.
ISDATEPermet de savoir si une expression correspond à une date.
IS JSONPermet de savoir si une rubrique est :
  • un contenu JSON (IS JSON),
  • un contenu JSON représentant un objet (IS JSON OBJECT),
  • un contenu JSON représentant un tableau (IS JSON ARRAY),
ISNULL /
IFNULL
Sélectionne des enregistrements pour lesquels la valeur d'une rubrique est nulle.
JSON_OBJECTPermet de récupérer un objet JSON à partir de n'importe quelle rubrique.
JSON_OBJECTAGGPermet de récupérer un objet JSON contenant une paire "clé:valeur" pour chaque clé et valeur spécifiques dans un ensemble de valeurs SQL.
JSON_ARRAYPermet de récupérer un tableau JSON à partir de n'importe quelle rubrique. Le contenu JSON récupéré correspond à un tableau.
JSON_ARRAYAGGPermet de récupérer un tableau JSON contenant une paire "clé:valeur" pour chaque clé et valeur spécifiques dans un ensemble de valeurs SQL.
JSON_EXISTSPermet de récupérer les enregistrements dont la rubrique JSON contient une donnée.
JSON_QUERYPermet de récupérer un objet ou un tableau au format JSON.
JSON_VALUEPermet de récupérer la valeur d'un élément contenu dans la rubrique JSON.
LAST_DAYCalcule la date du dernier jour du mois spécifié.
LAST_INSERT_IDRetourne le dernier identifiant automatique calculé.
LCASERetourne la chaîne str avec tous les caractères en minuscules, en fonction du jeu de caractères courant.
LEASTAvec deux arguments ou plus, retourne la plus petite valeur.
LEFTExtrait les premiers caractères du contenu d'une expression.
LEFT OUTER JOINRéalise une jointure externe
LENRenvoie la taille (le nombre de caractères) d'une expression.
LENGTHRenvoie la taille (le nombre de caractères) d'une expression.
LIKESélectionne des enregistrements pour lesquels la valeur d'une rubrique correspond à une valeur spécifiée (avec des caractères génériques).
LIMITRenvoie une partie du résultat de la requête.
LOWERConvertit en minuscules le contenu d'une expression.
LPADRenvoie une chaîne de taille déterminée. Pour atteindre la taille requise, cette chaîne est complétée à gauche :
  • soit par des espaces.
  • soit par un caractère ou une chaîne donnée.
LTRIMRenvoie une chaîne de caractères :
  • soit sans les espaces situés à gauche.
  • soit sans une liste de caractères.
MATCH AGAINSTPermet d'obtenir l'indice de pertinence de l'enregistrement lors d'une recherche full-text.
MAXRenvoie la plus grande valeur d'une rubrique pour tous les enregistrements sélectionnés dans le fichier.
MD5Calcule la somme de vérification MD5 de la chaîne string.
MIDExtrait une sous-chaîne, à partir d'une position donnée.
MINRenvoie la plus petite valeur d'une rubrique pour tous les enregistrements sélectionnés dans le fichier.
MONTHRenvoie le mois d'une date.
MONTHS_BETWEENRenvoie le nombre de mois entre deux dates.
NEW_TIMERenvoie la date après conversion du fuseau horaire.
NEXT_DAYRenvoie le premier jour de la semaine suivant la date ou le jour spécifié.
NOTInverse la signification de l'opérateur logique utilisé.
Utilisé dans les sous-requêtes.
NVLRemplace les valeurs nulles de la colonne par une valeur de substitution.
OCTRenvoie en octal un entier (exprimé en base 10).
OCTET_LENGTHRenvoie la taille (le nombre de caractères) d'une expression.
ONUtilisé lors de la création d'une jointure.
ORCombine plusieurs conditions de sélection (l'une ou l'autre).
ORDER BYTrie les enregistrements sélectionnés.
OVERLAYRemplace une chaîne dans une autre.
PATINDEXRenvoie la position de la première occurrence d'une chaîne de caractères.
POSITIONRenvoie la position d'une chaîne de caractères dans une expression.
RADIANSConvertit en radians un angle exprimé en degrés.
RANDOM/RANDRenvoie un nombre aléatoire compris entre 0.0 et 1.0 (inclus).
REGEXPEvalue une expression régulière au sein d'une requête SQL.
REPEATRetourne une chaîne de caractères constituée de la répétition de count fois la chaîne str.
REPLACERenvoie une chaîne de caractères :
  • soit en remplaçant toutes les occurrences d'un mot présent dans une chaîne par un autre mot.
  • soit en remplaçant toutes les occurrences d'un mot présent dans une chaîne.
REVERSERetourne une chaîne dont l'ordre des caractères est l'inverse de la chaîne str.
RIGHTExtrait les derniers caractères du contenu d'une expression.
RIGHT OUTER JOINRéalise une jointure externe.
REGEXP_LIKEEvalue une expression régulière au sein d'une requête SQL.
ROLLBACKAnnule une transaction.
ROLLBACK TO SAVEPOINTAnnule les opérations effectuées durant la transaction jusqu'au point de sauvegarde.
ROLLBACK TRANSACTIONAnnule une transaction.
ROLLBACK WORKAnnule une transaction.
ROUNDRenvoie la date arrondie au format spécifié.
RPADRenvoie une chaîne de taille déterminée. Pour atteindre la taille requise, cette chaîne est complétée à droite :
  • soit par des espaces.
  • soit par un caractère ou une chaîne donnée.
RTRIMRenvoie une chaîne de caractères :
  • soit sans les espaces situés à droite.
  • soit sans une liste de caractères.
SAVEPOINTCrée un point de sauvegarde dans la transaction en cours.
SELECTRecherche des enregistrements dans un ou plusieurs fichiers.
SETUtilisé avec l'instruction UPDATE
Définit les noms des rubriques utilisées.
SET ISOLATIONDéfinit le niveau d'isolation des transactions.
SHA / SHA1Calcule la somme de vérification SHA1 160 bits de la chaîne string, comme décrit dans la RFC 3174 (Secure Hash Algorithm).
SHIFT_LEFT_OPOpérateur sur les bits : <<
SHIFT_RIGHT_OPOpérateur sur les bits : >>
SOMEUtilisé dans les sous-requêtes
SOUNDEX, SOUNDEX LIKERenvoie la valeur phonétique
SOUNDEX2, SOUNDEX2 LIKERenvoie la valeur phonétique (adapté au français).
SPACERetourne une chaîne constituée de N espaces.
SPLIT_PARTDécoupe la chaîne selon un séparateur et renvoie la nième partie.
START TRANSACTIONDébute une transaction.
STDDEVPermet de connaître l'écart-type d'une série de valeurs représentant un échantillon de la population des données.
STDDEV_POPPermet de connaître l'écart-type d'une série de valeurs représentant la population entière des données.
STDDEV_SAMPPermet de connaître l'écart-type d'une série de valeurs représentant un échantillon de la population des données.
STRING_AGGPermet de concaténer des chaînes non nulles d'une liste de valeurs.
SUBSTRExtrait une sous-chaîne, à partir d'une position donnée.
SUBSTRINGExtrait une sous-chaîne, à partir d'une position donnée.
SUMRenvoie la somme totale des valeurs d'une rubrique pour tous les enregistrements sélectionnés dans le fichier.
SYSDATERenvoie la date et l'heure courante.
SYSTEM_USERRenvoie le nom de l'utilisateur de la connexion en cours.
TO_CHARFormate une date ou un nombre.
TOPRenvoie uniquement les n premiers enregistrements du résultat d'une requête.
TRANSLATERenvoie une chaîne de caractères en remplaçant tous les caractères indiqués par d'autres caractères.
TRIMRenvoie une chaîne de caractères :
  • soit sans les espaces situés à gauche et à droite.
  • soit sans une chaîne de caractères située en début et en fin de chaîne.
  • soit sans une chaîne de caractères située en début de chaîne.
  • soit sans une chaîne de caractères située en fin de chaîne.
TRUNCRenvoie la date tronquée au format spécifié.
UCASERetourne la chaîne str en majuscules, en fonction du jeu de caractères courant.
UNHEXContraire de HEX. Chaque paire de chiffres hexadécimaux est interprétée comme des nombres, et est convertie en un caractère représenté par le nombre.
UNICODERenvoie la valeur entière définie par la norme Unicode du premier caractère de l'expression indiquée.
UNIONRéalise des requêtes composées.
UPDATEMet à jour des enregistrements d'un fichier.
UPPERConvertit en majuscules le contenu d'une expression.
UUIDGénère un UUID (Identifiant Unique Universel).
Un UUID est un entier sur 128 bits représenté en hexadécimal sous forme d'une chaîne de caractères de la forme aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee.
Un UUID est garanti comme étant unique à chaque appel de la fonction.
USER_NAMERenvoie le nom de l'utilisateur de la connexion en cours.
VALUESUtilisé avec l'instruction INSERT
Définit les valeurs ajoutées.
VARIANCERenvoie la variance d'une série de valeurs (échantillon des données).
VAR_POPRenvoie la variance d'une série de valeurs (population entière des données).
VAR_SAMPRenvoie la variance d'une série de valeurs (échantillon des données).
WHEREPermet de spécifier la ou les condition(s) de sélection d'une requête.
XORXOR (OU exclusif) logique.
YEARRenvoie l'année d'une date.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 04/07/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale