sql >> データベース >  >> RDS >> Mysql

MySQLの=と:=の違いは何ですか?

    どちらも代入演算子です しかし、私がそれらの違いを見つけることができる1つのことは、= :=の間にブール演算を実行するために使用できます できません。

    有効 :SUM(val =0)
    無効:SUM(val:=0)

    FROMユーザー定義変数

    もう1つ、SET以外のステートメントでユーザー変数に値を割り当てることもできます。この場合、代入演算子は=ではなく:=である必要があります。これは、後者が非SETステートメントでは比較演算子=として扱われるためです。

    mysql> SET @t1=1, @t2=2, @t3:=4;
    mysql> SELECT @t1, @t2, @t3, @t4 := @[email protected][email protected];
    +------+------+------+--------------------+
    | @t1  | @t2  | @t3  | @t4 := @[email protected][email protected] |
    +------+------+------+--------------------+
    |    1 |    2 |    4 |                  7 | 
    +------+------+------+--------------------+
    


    1. Railsのテーブル列にハッシュ値を保持する方法

    2. ニージャーク待機統計:CXPACKET

    3. MYSQLからMYSQLIへの更新

    4. ReadUncommittedは、存在するすべてのLOWER自動インクリメントIDを知ることができますか?