sql >> Databasteknik >  >> RDS >> Mysql

Uppdatera flera kolumner med samma värde, kort syntax

Ingetdera är sant.
Uttrycket:

c1=c2=1

utvärderas som:

c1=(c2=1)

För MySql det booleska uttrycket c2=1 utvärderas till 0 eller 1 för false eller true respektive.
0 eller 1 kommer att tilldelas c1 och i det här fallet eftersom c2=1 är false resultatet blir 0 .
Du måste använda separata tilldelningar till varje kolumn:

update t1 
set 
  c1=1,
  c2=1;


  1. Varför ignoreras punktseparerade prefix i kolumnlistan för INSERT-satser?

  2. Postgres skapar POSTGIS-tilläggsfel med CentOS 6

  3. MySQL uppdatera uttalande för att lagra ranking positioner

  4. Fatalt fel:Anrop till odefinierad funktion getsqlvaluestring()