如何更新mysql中新增的列

如何更新mysql中新增的列,mysql,sql,sql-server,Mysql,Sql,Sql Server,嗨 我已经添加了一个新的专栏小时,我想更新该专栏。我写了下面的代码,但没有成功。以下代码有什么问题 UPDATE OFFICER SET HOURS=5 AND HOURS=4 AND HOURS=4 AND HOURS=3 WHERE NAME IN('KASUN','MANEL','LALA'); 不能同时为一列设置多个值您可以这样设置一个值 UPDATE OFFICER SET HOURS = 5 WHERE NAME IN('KASUN','MANEL','LALA'); 不能同

我已经添加了一个新的专栏小时,我想更新该专栏。我写了下面的代码,但没有成功。以下代码有什么问题

UPDATE OFFICER
SET HOURS=5 AND HOURS=4 AND HOURS=4 AND HOURS=3
WHERE NAME IN('KASUN','MANEL','LALA');

不能同时为一列设置多个值您可以这样设置一个值

UPDATE OFFICER  SET HOURS = 5 
WHERE NAME IN('KASUN','MANEL','LALA');

不能同时为一列设置多个值您可以这样设置一个值

UPDATE OFFICER  SET HOURS = 5 
WHERE NAME IN('KASUN','MANEL','LALA');

如果您只想用这些值填充新列,您可以在如下情况下使用更新:

如果您想用随机数填充行,只需生成一个随机数,如:

UPDATE OFFICER
   SET HOURS = ABS(Checksum(NewID()) % 6) + 1
 WHERE NAME IN('KASUN','MANEL','LALA');
 ;

ABSChecksumNewID%6+1将生成一个介于1和6之间的随机数。如果您只想用这些值填充新列,您可以在如下情况下使用更新:

如果您想用随机数填充行,只需生成一个随机数,如:

UPDATE OFFICER
   SET HOURS = ABS(Checksum(NewID()) % 6) + 1
 WHERE NAME IN('KASUN','MANEL','LALA');
 ;

ABSChecksumNewID%6+1将生成一个介于1和6之间的随机数。猜猜看,我想您可能需要在以下情况下使用CASE:


猜猜看,我想你可能需要的情况下:


如果有条件,则意味着您可以根据条件为同一字段设置多个值,如

UPDATE OFFICER SET HOURS = CASE WHEN NAME= 'KASUN' THEN 5 
                   WHEN NAME= 'MANEL' THEN 4 
                   WHEN NAME= 'LALA' THEN 3  END WHERE NAME IN('KASUN','MANEL','LALA');
其他方面,你可以像下面这样单独输入-

    UPDATE OFFICER  SET HOURS=5 WHERE NAME='KASUN';

    UPDATE OFFICER SET HOURS=4 WHERE NAME ='MANEL';

    UPDATE OFFICER AND HOURS=3 WHERE NAME='LALA';

如果有条件,则意味着您可以根据条件为同一字段设置多个值,如

UPDATE OFFICER SET HOURS = CASE WHEN NAME= 'KASUN' THEN 5 
                   WHEN NAME= 'MANEL' THEN 4 
                   WHEN NAME= 'LALA' THEN 3  END WHERE NAME IN('KASUN','MANEL','LALA');
其他方面,你可以像下面这样单独输入-

    UPDATE OFFICER  SET HOURS=5 WHERE NAME='KASUN';

    UPDATE OFFICER SET HOURS=4 WHERE NAME ='MANEL';

    UPDATE OFFICER AND HOURS=3 WHERE NAME='LALA';

您使用的是MySQL还是MS SQL Server?不要标记未涉及的产品。不要尝试多次这样设置同一列。您能更好地描述您的更新逻辑吗?不确定您的查询。请使用if条件。可能重复?:您使用的是MySQL还是MS SQL Server?不要标记未涉及的产品。不要尝试多次这样设置同一列。您能更好地描述您的更新逻辑吗?不确定您的查询。请使用条件。可能重复?:谢谢E-housma Mardini!当我一次添加一列时,它起作用了。谢谢你知道如何一次添加所有列吗?我的朋友,你不能在一行中为同一个字段设置多个值。谢谢E-housma Mardini!当我一次添加一列时,它起作用了。谢谢你知道如何一次添加所有列吗?我的朋友,你不能在一行中为同一个字段设置多个值