Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

O que significa o operador :=no mysql?


No MySQL, := é um operador de atribuição:
SELECT @foo := 'bar';    // variable 'foo' now has value 'bar'
return value: 'bar'

enquanto = é um teste de igualdade:
SELECT @foo = 'hi mom'; // does variable 'foo' have the value 'hi mom';
return value: false   ('bar' == 'hi mom' -> false)

Observe que você PODE fazer testes de igualdade E atribuição com set consultas:
SET @foo = 'bar' = 'baz';

que fará com que @foo a ser atribuído false , o resultado booleano de 'bar' = 'baz' . Ele é executado da seguinte forma:
SET @foo = ('bar' = 'baz');
SET @foo = false;