Il existe de nombreux opérateurs dans MYSQL. Cette section parle principalement des opérateurs qui sont dans MYSQL mais pas dans SQLSERVER
Opérateur égal sûr ()
Ceci. L'opérateur effectue la même comparaison que l'opérateur =, mais peut être utilisé pour déterminer les valeurs NULL.
Lorsque les deux opérandes sont NULL, la valeur de retour est 1 au lieu de NULL ;
Lorsqu'un opérande est NULL, la valeur de retour est 0 au lieu de NULL .
Voici les résultats d'exécution de SELECT NULL 1 SELECT 10 SELECT NULL NULL
Lorsque les deux opérandes sont NULL , son retour la valeur est 1 et non NULL
Opérateur LEAST
La syntaxe Le format est : LEAST (valeur 1, valeur 2,...valeur n), où la valeur n indique qu'il y a n valeurs dans la liste des paramètres. Dans le cas de deux arguments ou plus, renvoie la valeur minimale.
Si une variable indépendante est NULL, la valeur de retour de LEAST() est NULL
Utilisez l'opérateur LEAST pour déterminer la taille :
Comme vous pouvez le voir sur les résultats, lorsque le paramètre est un nombre entier ou à virgule flottante, LEAST renverra la plus petite valeur
Lorsque le paramètre est une chaîne, l'ordre alphabétique ; l'ordre sera renvoyé dans les caractères d'ordre le plus élevé ;
Lorsqu'il y a NULL dans la liste des valeurs de comparaison, la taille ne peut pas être déterminée et la valeur de retour est NULL
Opérateur GREATEST
Le format de syntaxe est : GREATEST(value 1, value2,...valueen), où n signifie qu'il y a n valeurs dans la liste des paramètres.
Avec deux arguments ou plus, renvoie la valeur maximale.
Si une variable indépendante est NULL, la valeur de retour de GREATEST() est NULL
Utilisez l'opérateur GREATEST pour déterminer la taille :
Comme vous pouvez le voir sur les résultats, lorsque le paramètre est un nombre entier ou à virgule flottante, GREATEST renverra la plus grande valeur
Lorsque le paramètre est une chaîne, la plus basse ; l'ordre des lettres sera renvoyé ;
Lorsqu'il y a NULL dans la liste des valeurs de comparaison, la taille ne peut pas être déterminée et la valeur de retour est NULL
Opérateur REGEXP
n'a pas de fonctions ou d'opérations régulières dans SQLSERVER Oui, MYSQL est en effet relativement complet à cet égard
est utilisé pour faire correspondre les chaînes. Le format de syntaxe est : expr REGEXP conditions de correspondance. 1 est renvoyé ;
Si ce n'est pas le cas, retournez 0
Si l'expression ou la condition correspondante est NULL, le résultat est NULL
Plusieurs caractères génériques couramment utilisés :
(1) '^' correspond à Une chaîne commençant par le caractère suivant ce caractère
(2) '$' correspond à une chaîne se terminant par un caractère suivant ce caractère
( 3) '.' correspond à n'importe quel caractère
(4) '[...]' correspond à n'importe quel caractère entre crochets. Par exemple, "[abc]" correspond à a, b ou c. La plage de caractères
peut utiliser un '-', "[a-z]" correspond à n'importe quelle lettre et "[0-9]" correspond à n'importe quel nombre
(5) '*' correspond zéro un ou plusieurs caractères le précédant. Par exemple, "x*" correspond à n'importe quel nombre de caractères "*", "[0-9]*" correspond à n'importe quel nombre de chiffres,
et ".*" correspond à n'importe quel nombre de caractères.
Utilisez l'opérateur REGEXP pour effectuer des opérations de correspondance de chaîne. L'instruction SQL est la suivante :
Comme vous pouvez le voir dans les résultats, la chaîne correspondante spécifiée. c'est ciel.
'^s' signifie correspondre à n'importe quelle chaîne commençant par la lettre s, donc la condition de correspondance est remplie et 1 est renvoyé
'y$' signifie correspondre à n'importe quelle chaîne se terminant par la lettre y ; , Par conséquent, la condition de correspondance est remplie et 1 est renvoyé ;
'.sky' signifie qu'il correspond à toute chaîne se terminant par sky et que la longueur des caractères est de 4, donc la condition de correspondance est remplie et 1 est renvoyé ;
'^s' signifie correspondre à n'importe quelle chaîne commençant par la lettre s, donc la condition de correspondance est remplie et 1 est renvoyé
'[ab]' signifie correspondre à n'importe quelle chaîne contenant la lettre a ; ou b, et il n'y a pas de lettre a dans la chaîne spécifiée. Il n'y a pas de lettre b, donc la condition de correspondance n'est pas remplie et 0 est renvoyé
CONSEILS : les expressions régulières sont un outil puissant pour les requêtes complexes. avec la correspondance de chaîne LIKE, ils peuvent utiliser davantage de types de caractères génériques
Les résultats des requêtes sont plus flexibles.
Opérateur logique
Opérateur logique ET : ET ou &&
Opérateur logique OU : OU ou ||
Les deux opérateurs ci-dessus sont sans oublier
Dans SQLSERVER, l'opérateur AND est AND ou & ; l'opérateur OR est OR ou |
http://sqlfool.com/2009/02/bitwise-operations/
Opérateur OU exclusif : , le résultat de retour est 0 ;
Si l'un est 0 et l'autre est non 0, le résultat de retour est 1
Utilisez l'opérateur OU exclusif XOR pour faire des jugements logiques. L'instruction SQL est la suivante
Vous pouvez voir d'après les résultats que les opérandes des deux côtés des opérateurs dans '1 XOR 1' et '0 XOR 0' sont toutes deux des valeurs non nulles, ou les deux sont des valeurs nulles, donc renvoie
'1 Un opérande est NULL et le résultat renvoyé est NULL
'1 XOR 1 XOR ; 1' a plusieurs opérandes et les opérateurs sont les mêmes, donc les opérateurs sont calculés de gauche à droite, '1 XOR 1' Le résultat est 0, puis l'opération XOR est effectuée avec 1, donc le résultat est 1.
CONSEILS : Le calcul d'un utilisé, voici juste une brève introduction
Les opérateurs de bits sont utilisés pour tester, décaler ou tester des bits en octets binaires
Les opérations sur les bits fournies dans MYSQL sont
OU au niveau du bit (|)
ET au niveau du bit (&)
XOR au niveau du bit (^)
Décalage à gauche au niveau du bit (
Décalage au niveau du bit vers la droite (>>)
Inversion au niveau du bit (~) : inverser tous les bits
CONSEILS : vous pouvez utiliser BIN()=binary La fonction vérifie la représentation binaire d'un nombre décimal
Par exemple, le nombre 20 SELECT BIN(20)
La représentation binaire est : 10100
De même, SQLServer a également des opérateurs au niveau du bit, mais pas autant que MySQL, comme suit
Conseils spéciaux
Certains caractères spéciaux dans MYSQL nécessitent que des caractères d'échappement puissent être inséré dans la base de données, sinon des résultats inattendus se produiront. Les caractères spéciaux suivants doivent être précédés d'une barre oblique inverse lors de la saisieLa saisie de guillemets simples nécessite : '
La saisie de guillemets doubles nécessite : "
Entrer barre oblique inverse : \
Entrez le retour chariot : r
Entrez le saut de ligne : n
Entrez l'onglet : tab
Entrez les symboles d'espace arrière : b
Assurez-vous d'échapper ces caractères spéciaux avant de les insérer dans la base de données
Dans SQLSERVER, ces caractères spéciaux ne sont pas précédés d'une barre oblique inverse, mais de guillemets simples'
Par exemple, insérez un guillemet simple et ajoutez une barre oblique inverse, et l'insertion est réussie
Résumé
Cette section présente brièvement MYSQL Certains opérateurs et caractères spéciaux, et compare les différences avec SQLSERVER