我在ruby rails中有一个小应用程序。
我是这门语言的新手,我想在我的数据库(mysql)中找到表的特定列中的重复记录。

      <th>Count Activation</th>
<td align="center" width="4%"><%= Database.select(:license_code).count %></td>

我把它放进去,这就得到了license_code列,并计算出在我的应用程序中出现许可证代码记录的次数。
我需要找到许可证代码的重复值,以及找到的每个值的重复计数,并将其放入我的erb页面的“计数激活”列(只是一个显示数据库的页面:
<table width="120%" align="center" border="2" class="display" id="mytable" style="margin:3px">

<thead>
    <tr>
      <th>Negozio</th>
      <th>Cliente</th>
      <th>Azienda</th>
      <th>Referente</th>
      <th>Cellulare</th>
      <th>Email</th>
      <th>Antivirus</th>
      <th>Attivazione Effettiva</th>
      <th>Attivazione al cliente</th>
      <th>Scadenza Reale</th>
      <th>License code</th>
      <th>Licenza valida per n. pc</th>
      <th>Licenza attivata su n. pc</th>
      <th>Prezzo</th>
      <th>Opzioni</th>
      <th>Count Attivazioni</th>
    </tr>
  </thead>

  <tbody>
    <% @databases.each do |database| %>
      <tr>
        <td align="center" width="15%"><%= database.shop %></td>
<td align="center" width="5%"><%= database.customer %></td>
<td align="center" width="6%"><%= database.company %></td>
<td align="center" width="7%"><%= database.referer %></td>
<td align="center" width="10%"><%= database.phone %></td>
<td align="center" width="10%"><%= database.email %></td>
<td align="center" width="4%"><%= database.antivirus %></td>
<td align="center" width="7%"><%= database.activated_at %></td>
<td align="center" width="7%"><%= database.customer_activated_at %></td>
<td align="center" width="6%"><%= database.license_expires_at %></td>
<td align="center" width="16%"><%= database.license_code %></td>
<td align="center" width="4%"><%= database.license_activable_for_pc %></td>
<td align="center" width="4%"><%= database.license_activated_in %></td>
<td align="center" width="4%"><%= database.price %></td>
<td align="center" width="10%"><%= link_to 'Show', database %> | <%= link_to 'Edit', edit_database_path(database) %> |
  <%= link_to 'Destroy', database, method: :delete, data: { confirm: 'Are you sure?' } %></td>

<td align="center" width="4%"><%= Database.select(:license_code).count %></td>
      </tr>
    <% end %>

有人能帮我吗?:)

最佳答案

license_count的重复值

class Database < ActiveRecord::Base
   scope :duplicate_databases, -> {select(:license_code).group(:license_code).having("count(*) > 1")}
end

控制器内
def action
  @duplicate_records =  Database.duplicate_databases
 end

在视图中
 <td> count activation:  <%= @duplicate_records.count %>  </td>

关于mysql - Ruby Rails,获取索引erb页面中db中某列的重复计数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25620867/

10-09 15:10