In MySQL, :=
è un operatore di assegnazione:
SELECT @foo := 'bar'; // variable 'foo' now has value 'bar'
return value: 'bar'
mentre =
è un test di uguaglianza:
SELECT @foo = 'hi mom'; // does variable 'foo' have the value 'hi mom';
return value: false ('bar' == 'hi mom' -> false)
Nota che puoi eseguire sia il test di uguaglianza che l'assegnazione con set
domande:
SET @foo = 'bar' = 'baz';
che causerà @foo
da assegnare false
, il risultato booleano di 'bar' = 'baz'
. Viene eseguito come segue:
SET @foo = ('bar' = 'baz');
SET @foo = false;