mysql - 更新表中的多个值

标签 mysql sql sql-update

我正在处理一个包含大量条目的表,每个条目都有多个值。

我被要求对该表的某些子部分进行一些编辑。问题是,当我执行脚本时,每个已经在“SET”中具有一个或多个值的条目都将被忽略,即使其他值未被修改。例如,假设我有 40 个条目满足此代码的条件:

UPDATE `table1`
SET `value1` = "50" AND `value2` = "75" AND `value3` = "1800" AND `value4` = "81015" AND `value5` = "String here."
WHERE `condition1` = "2" AND `condition2` = "1" AND `condition3` = "1";

在这 40 个中,有 15 个的 value2 等于 75,但其余的不匹配。由于某种原因,这 15 个条目根本没有被修改。

我不确定这是因为我用来处理数据库的软件(SQLyog 社区),还是语法问题。

我该如何解决这个问题?

谢谢。

最佳答案

更新字段应该用逗号分隔,而不是 AND 关键字。

UPDATE table1 
    SET value1 = "50", 
    value2 = "75", value3 = "1800", value4 = "81015", value5 = "String here." 
WHERE 
    condition1 = "2" AND condition2 = "1" AND condition3 = "1";

关于mysql - 更新表中的多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17344211/

相关文章:

mySQL 将字符串日期转换为季度

mysql - sqljocky - MySql - 与 MySql 通信

mysql - 根据经纬度查找用户

sql - 在 BigQuery 中创建具有重复嵌套列的表语句

mysql - 如何根据日期列将行转换为列?

sql - 在 SQLite 数据库的特定位置插入一行

MySQL 更新有两个子查询

sql - 将选择转换为更新

mysql - 在查询中使用内连接时出现 SQL 语法错误

php - MySQL select 查询发现一个不应该在 PDO 中找到的结果