4D v16.3Opérateurs de comparaison |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
Opérateurs de comparaison
|
Opération | Syntaxe | Retourne | Expression | Valeur |
Egalité | Chaîne = Chaîne | Booléen | "abc" = "abc" | Vrai |
"abc" = "abd" | Faux | |||
Inégalité | Chaîne # Chaîne | Booléen | "abc" # "abd" | Vrai |
"abc" # "abc" | Faux | |||
Supérieur à | Chaîne > Chaîne | Booléen | "abd" > "abc" | Vrai |
"abc" > "abc" | Faux | |||
Inférieur à | Chaîne < Chaîne | Booléen | "abc" < "abd" | Vrai |
"abc" < "abc" | Faux | |||
Supérieur ou égal à | Chaîne >= Chaîne | Booléen | "abd" >= "abc" | Vrai |
"abc" >= "abd" | Faux | |||
Inférieur ou égal à | Chaîne <= Chaîne | Booléen | "abc" <= "abd" | Vrai |
"abd" <= "abc" | Faux | |||
Contient mot-clé | Chaîne % Chaîne | Booléen | "Alpha Bravo" % "Bravo" | Vrai |
"Alpha Bravo" % "ravo" | Faux | |||
Image % Chaîne | Booléen | Expr_image % "Mer" | Vrai (*) |
(*) Si le mot-clé "Mer" a été associé à l'image stockée dans l'expression image (champ ou variable).
Important : Des informations supplémentaires sur les comparaisons de chaînes sont fournies à la fin de cette section.
Opération | Syntaxe | Retourne | Expression | Valeur |
Egalité | Nombre = Nombre | Booléen | 10 = 10 | Vrai |
10 = 11 | Faux | |||
Inégalité | Nombre # Nombre | Booléen | 10 #11 | Vrai |
10 # 10 | Faux | |||
Supérieur à | Nombre > Nombre | Booléen | 11 > 10 | Vrai |
10 > 11 | Faux | |||
Inférieur à | Nombre < Nombre | Booléen | 10 < 11 | Vrai |
11 < 10 | Faux | |||
Supérieur ou égal à | Nombre >= Nombre | Booléen | 11 >= 10 | Vrai |
10 >= 11 | Faux | |||
Inférieur ou égal à | Nombre <= Nombre | Booléen | 10 <= 11 | Vrai |
11 <= 10 | Faux |
Note : Pour plus d'informations sur la précision des comparaisons d'égalité des nombres réels, reportez-vous à la commande SET REAL COMPARISON LEVEL.
Opération | Syntaxe | Retourne | Expression | Valeur |
Egalité | Date = Date | Booléen | !1/1/97! =!1/1/97! | Vrai |
!20/1/97! =!1/1/97! | Faux | |||
Inégalité | Date # Date | Booléen | !20/1/97! # !1/1/97! | Vrai |
!1/1/97! # !1/1/97! | Faux | |||
Supérieur à | Date > Date | Booléen | !20/1/97! > !1/1/97! | Vrai |
!1/1/97! > !1/1/97! | Faux | |||
Inférieur à | Date < Date | Booléen | !1/1/97! < !20/1/97! | Vrai |
!1/1/97! < !1/1/97! | Faux | |||
Supérieur ou égal à | Date >= Date | Booléen | !20/1/97! >=!1/1/97! | Vrai |
!1/1/97!>=!20/1/97! | Faux | |||
Inférieur ou égal à | Date <= Date | Booléen | !1/1/97!<=!20/1/97! | Vrai |
!20/1/97!<=!1/1/97! | Faux |
Opération | Syntaxe | Retourne | Expression | Valeur |
Egalité | Heure = Heure | Booléen | ?01:02:03? = ?01:02:03? | Vrai |
?01:02:03? = ?01:02:04? | Faux | |||
Inégalité | Heure # Heure | Booléen | ?01:02:03? # ?01:02:04? | Vrai |
?01:02:03? # ?01:02:03? | Faux | |||
Supérieur à | Heure > Heure | Booléen | ?01:02:04? > ?01:02:03? | Vrai |
?01:02:03? > ?01:02:03? | Faux | |||
Inférieur à | Heure < Heure | Booléen | ?01:02:03? < ?01:02:04? | Vrai |
?01:02:03? < ?01:02:03? | Faux | |||
Supérieur ou égal à | Heure >= Heure | Booléen | ?01:02:03? >=?01:02:03? | Vrai |
?01:02:03? >=?01:02:04? | Faux | |||
Inférieur ou égal à | Heure <= Heure | Booléen | ?01:02:03? <=?01:02:03? | Vrai |
?01:02:04? <=?01:02:03? | Faux |
Avec :
` vPtrA et vPtrB pointent sur le même objet
vPtrA:=->unObjet
vPtrB:=->unObjet
` vPtrC pointe sur un autre objet
vPtrC:=->autreObjet
Opération | Syntaxe | Retourne | Expression | Valeur |
Egalité | Pointeur = Pointeur | Booléen | vPtrA = vPtrB | Vrai |
vPtrA = vPtrC | Faux | |||
Inégalité | Pointeur # Pointeur | Booléen | vPtrA # vPtrC | Vrai |
vPtrA # vPtrB | Faux |
Voici quelques informations supplémentaires sur les comparaisons d'alphanumériques :
Character code("A")=Character code("a") // 65 n'est pas égal à 97
"n"="ñ"
"n"="Ñ"
"A"="å"
// etc
"Alpha Bravo Charlie"%"Bravo" ` Retourne Vrai
"Alpha Bravo Charlie"%"vo" ` Retourne Faux
"Alpha Bravo Charlie"%"Alpha Bravo" ` Retourne Faux
"Alpha,Bravo,Charlie"%"Alpha" ` Retourne Vrai
"Software and Computers"%"comput@" ` Retourne Vrai
"abcdefghij"="abc@"
Le joker doit être utilisé dans le second opérande (la chaîne qui se trouve à droite de l'opérateur). L'expression suivante est évaluée à FAUX car le joker est alors considéré en tant que caractère :
"abc@"="abcdefghij"
Le joker signifie “un ou plusieurs caractères sinon rien”. Les expressions suivantes sont évaluées à VRAI :
"abcdefghij"="abcdefghij@"
"abcdefghij"="@abcdefghij"
"abcdefghij"="abcd@efghij"
"abcdefghij"="@abcdefghij@"
"abcdefghij"="@abcde@fghij@"
En revanche, dans tous les cas, lorsque deux jokers consécutifs sont placés dans une comparaison de chaînes, celle-ci sera évaluée à FAUX. L'expression suivante est à FAUX :
"abcdefghij"="abc@@fg"
Lorsque l'opérateur de comparaison est ou contient un symbole < ou >, seule la comparaison avec un seul joker situé en fin d'opérande est prise en charge :
"abcd"<="abc@" `Comparaison valide
"abcd"<="abc@ef" `Comparaison non valide
Note : Si vous souhaitez effectuer des comparaisons ou des recherches utilisant @ en tant que caractère (et non en tant que joker), vous disposez de deux possibilités :
($vaValeur≤Length($vaValeur)≥="@")
(Character code($vaValeur≤Length($vaValeur)≥)#64)
Opérateurs
Opérateurs logiques
Opérateurs numériques
Opérateurs sur les bits
Opérateurs sur les dates
Opérateurs sur les heures
Opérateurs sur les images
Produit : 4D
Thème : Opérateurs
4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)