mysql - 如何使用条件更新数据库表中的值?

标签 mysql ruby-on-rails

我需要更新表中的“状态”字段,其中 id == Question_id。我尝试了这个,但它不起作用:

Questions.update_all("status = status_id.to_i", 
               ["id = question_id"])

我有这个错误:

Mysql2::Error: Unknown column 'question_id' in 'where clause': UPDATE `questions` SET status = status_id.to_i WHERE (id = question_id)

最佳答案

像这样吗?

Questions.where(id: Question_id).update_all(status: status_id.to_i)

关于mysql - 如何使用条件更新数据库表中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16250206/

相关文章:

mysql - 编写mySQL获取序列

ruby-on-rails - 为什么 ActiveRecord 在为关联中的联接生成 SQL 时不使用 primary_key 和 foreign_key 列?

ruby-on-rails - 获取 "own"所有这些其他记录的所有记录

php - 我可以在我的网站上回显我的所有数据,但我不能将所有数据都放在我的 html 中

php - 复制php资源

php - 我如何从数据库中具有单个值和数组的列中查询 laravel?

具有多个组的 Mysql Rollup

ruby-on-rails - 如何在Rails中创建连接表记录,有很多: through relationship

ruby-on-rails - 阻止 Ruby on Rails 发送 session header

ruby-on-rails - ActiveStorage 是否可以创建用于直接上传的 blob 并在上传完成之前将其附加到模型?