a = b
в MySQL сравнивает a
с b
и возвращает true
, если они равны, или false
в противном случае. @a := b
, с другой стороны, устанавливает значение @a
в b
.
По сути, =
- это оператор сравнения («равен»), а :=
- оператор присваивания («равен»).
РЕДАКТИРОВАТЬ: Я только что обнаружил, что вы можете использовать =
в качестве оператора присваивания в SET
операторах, так как в них нет таких вещей, как сравнения. В операторах SELECT
вы должны использовать :=
для присваивания.