如何逐步查询rails中的SQL?

how to query SQL in rails step by step?

我一直在网上到处寻找答案,但没有成功。我在哪里输入我的查询?在 rails 中?我知道我必须使用 ActiveRecord::base.connection 但我不知道它必须在哪里 运行。对不起,如果这是一个愚蠢的问题。

Rails 使用名为 ActiveRecord 的 ORM 与 SQL 数据库交互:

http://guides.rubyonrails.org/active_record_basics.html

语法简单明了,您可以通过使用 rails console(缩写为 rails c)打开 rails 控制台来输入查询。

例如,如果我想查找问题 table 中的所有记录,我打开控制台并简单地键入 Question.all:

irb(main):001:0> Question.all

...转换为以下 SQL 查询:

Question Load (4.2ms) SELECT 'questions'.* FROM 'questions'

如果您想在 rails 控制台中执行原始 SQL 命令,您可以使用 ActiveRecord::Base.connection.execute(some_string) 和 SQL 作为字符串对象。

您可以直接将 SQL 字符串写为参数,也可以预先将其声明为变量:

sql = "some raw sql"
ActiveRecord::Base.connection.execute(sql)

查看此问题了解更多信息:Rails raw SQL example