【问题标题】:Add numerical value to every numerical value of a column mysql将数值添加到列mysql的每个数值
【发布时间】:2018-07-11 21:14:14
【问题描述】:

我有一个数据库,其中的 rate 列包含数值数据。我想更新此列中的数据,每个数据都加 20。

我在努力,

UPDATE 'refinance' SET 'rate' = rate + 20 

我在模拟此查询时遇到语法错误:

1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 ''refinance' SET 'rate' = rate + 20' 附近使用正确的语法

感谢您对此的意见。 埃里克

【问题讨论】:

  • 错误是什么?还有你的真实表名?
  • 查询没有错误兄弟。所以也要提到你的错误。 “table”是mysql中的一个关键字。你的 table_name 是“table”吗?
  • 如果使用mysql保留字etc:table,from etc..会报这个错误。
  • 欢迎来到 SO。请在您的问题中添加任何错误,以使其完整。
  • 感谢@mawg 的建议,但我不想要一行,所以我不想使用 where 子句来定位和 id 我想更新列的每一行中的每个值值 20

标签: mysql


【解决方案1】:

请参考更新表语法,需要指定表名而不是表关键字。

UPDATE refinance SET rate = rate + 20; 

https://dev.mysql.com/doc/refman/5.7/en/update.html

https://www.w3schools.com/sql/sql_update.asp

【讨论】:

  • 是的,我在查询中使用了实际的表名
  • 那么请更新您尝试过的确切查询并在问题中出错
【解决方案2】:

所以事实证明这个查询毕竟是有效的,我只有在我按下 phpMyAdmin 中的“模拟查询”按钮时才会收到错误,当我点击它处理的“开始”按钮时不会出错。

我对 sql 比较陌生,所以不确定为什么会出现这种情况,或者如果模拟不是实际语法的表示,那么模拟的好处是什么。感谢大家的投入和时间。

埃里克

【讨论】:

    猜你喜欢
    • 2019-07-01
    • 2014-09-18
    • 1970-01-01
    • 2021-04-12
    • 2013-10-25
    • 2021-04-14
    • 1970-01-01
    • 2017-09-30
    • 2021-10-31
    相关资源
    最近更新 更多