gpt4 book ai didi

mysql - Rails 事件记录查询字符串

转载 作者:行者123 更新时间:2023-11-29 22:33:11 25 4
gpt4 key购买 nike

当我有这样的 AR 查询时:

MyModel.joins(:related_model).where('related_model.some_column = ?', 'somevalue')

如果我在上面的代码中使用to_sql,它会生成类似以下内容的内容:

"SELECT * FROM MY_MODEL INNER JOIN RELATED_MODEL ON RELATED_MODEL.SOME_ID = MY_MODEL.SOME_ID WHERE RELATED_MODEL.SOME_COLUMN = 'SOMEVALUE'"

我正在创建一个稍微复杂一点或更复杂的查询,并且我讨厌重复代码。有没有办法可以通过一些命令来更改下面生成的 SQL 来获取此部分?

INNER JOIN RELATED_MODEL ON RELATED_MODEL.SOME_ID = MY_MODEL.SOME_ID WHERE RELATED_MODEL.SOME_COLUMN = 'SOMEVALUE'"

最佳答案

foo = MyModel.joins(:related_model).where('related_model.some_column = ?', 'somevalue').to_sql`

core_sql = foo.sub(/^SELECT * FROM MY_MODEL /,'')`

关于mysql - Rails 事件记录查询字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29658246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com