Mysql
 sql >> Base de données >  >> RDS >> Mysql

Que signifie l'opérateur :=dans mysql ?

Dans MySQL, := est un opérateur d'affectation :

SELECT @foo := 'bar';    // variable 'foo' now has value 'bar'
return value: 'bar'

tandis que = est un test d'égalité :

SELECT @foo = 'hi mom'; // does variable 'foo' have the value 'hi mom';
return value: false   ('bar' == 'hi mom' -> false)

Notez que vous POUVEZ faire à la fois des tests d'égalité ET des affectations avec set requêtes :

SET @foo = 'bar' = 'baz';

ce qui causera @foo à attribuer false , le résultat booléen de 'bar' = 'baz' . Il s'exécute comme suit :

SET @foo = ('bar' = 'baz');
SET @foo = false;