En fait, ce sont tous deux des opérateurs d'affectation, utilisés pour attribuer des valeurs, mais les différences significatives entre eux sont les suivantes -
= l'opérateur attribue une valeur dans le cadre de l'instruction SET ou dans le cadre de la clause SET dans l'instruction UPDATE, dans dans tous les autres cas, l'opérateur = est interprété comme un opérateur de comparaison. En revanche, l'opérateur := attribue une valeur et n'est jamais interprété comme un opérateur de comparaison.
mysql> Update estimated_cost1 SET Tender_value = '8570.000' where id = 2; Query OK, 1 row affected (0.06 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> Update estimated_cost1 SET Tender_value := '8575.000' where id = 2; Query OK, 1 row affected (0.06 sec) Rows matched: 1 Changed: 1 Warnings: 0
Dans les deux requêtes ci-dessus, nous avons utilisé l'opérateur = et l'opérateur := pour mettre à jour les valeurs de la table.
mysql> Set @A = 100; Query OK, 0 rows affected (0.01 sec) mysql> Select @A; +------+ | @A | +------+ | 100 | +------+ 1 row in set (0.00 sec) mysql> Set @B := 100; Query OK, 0 rows affected (0.00 sec) mysql> Select @B; +------+ | @B | +------+ | 100 | +------+ 1 row in set (0.00 sec)
Dans les deux requêtes ci-dessus, nous avons utilisé l'opérateur = et l'opérateur := pour attribuer des valeurs aux variables utilisateur. Nous pouvons voir que l'opérateur = et l'opérateur := ont la même utilisation et la même fonctionnalité dans les deux cas. Mais dans la requête suivante, l'opérateur = est utilisé comme opérateur de comparaison et donne le résultat "VRAI", c'est-à-dire que les variables utilisateur @A et @B ont la même valeur.
mysql> Select @A = @B; +---------+ | @A = @B | +---------+ | 1 | +---------+ 1 row in set (0.00 sec)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!