1

私のmy-sqlユーザーデータには、u_idとu_nameの2つの列があります。

値がない場合は、u_nameをu_idとして更新したいと思います。

UPDATE T_USER_ACCOUNT SET `u_name`=`u_id` WHERE `u_name` = 'NULL'

このクエリを実行しましたが、0行に影響しました。

エラーの原因は何ですか?

4

4 に答える 4

2

値と比較する場合は、列に( =)を割り当てないでください。正しい方法は次のとおりです。nullNULL

UPDATE T_USER_ACCOUNT SET `u_name`=`u_id` WHERE `u_name` IS NULL

クエリでは、

UPDATE T_USER_ACCOUNT SET `u_name`=`u_id` WHERE `u_name` = 'NULL'

文字またはVARCHARの値u_nameNULL

于 2012-05-25T05:21:14.137 に答える
1

NULL使用と比較する場合IS NULL

WHERE u_name IS NULL

2つのことを変更したことに注意してください。

  • NULL引用符で囲まれていません。
  • と比較する場合は、ISの代わりに使用してください。=NULL
于 2012-05-25T05:20:57.010 に答える
0

これを試して

UPDATE T_USER_ACCOUNT SET `u_name`=`u_id` WHERE `u_name` IS NULL

null値をチェックするには、IsNULLを使用する必要があります。

于 2012-05-25T05:21:23.777 に答える
0

使用してみてくださいIS NULL

UPDATE T_USER_ACCOUNT SET `u_name`=`u_id` WHERE `u_name` IS NULL
于 2012-05-25T05:21:37.523 に答える