Ruby on Rails-如何执行自定义查询?

问题描述 投票:1回答:1

我有2个具有数百万条记录的表:

第一个表是Subscription,第二个表是Message

Subscription表中,我有3个索引:

  • subscription_id

  • msisdn

  • reporting_id

但是,在Message表中,我只有两个索引:

  • message_id

  • reporting_id

我在msisdn表中有Message,但没有索引。] >>

因此,我有一个仪表板UI,可让我搜索Message

我想使用Message搜索msisdn,但由于未索引msisdn,因此查询将永远进行下去!

但是我想将“在msisdn表中索引Message的索引”

作为计划B。

所以我的计划A是(这是我需要帮助的地方:

由于两个表都索引了reporting_id,因此我想使用仪表板中的Message搜索subscription.msisdn,然后从那里开始,我想使用subscription.reporting_id并列出所有带有Message的[ C0]。

类似于subscription.reporting_id

我有这两个表的subscription.reporting_id = message.reporting_idviewcontroller

我尝试在两个模型中都这样做

[model中的has_many :message, foreign_key: :reporting_id

[Subscription.rb中的belongs_to :subscription

但是没有用。

有人知道我该怎么做到吗?

PS:我想防止编辑表结构。

我有2个具有数百万条记录的表:第一个表是Subscription,第二个表是Message。在“订阅”表中,我有3个索引:subscription_id msisdn report_id但是,在“消息...

sql ruby-on-rails activerecord ruby-on-rails-5
1个回答
0
投票

如果要在Subscription类中建立Message.rb关联,则需要指定primary_key。

© www.soinside.com 2019 - 2024. All rights reserved.