簡體   English   中英

從數據庫獲取唯一列結果的列表

[英]Get list of unique column results from database

我偶然發現了這個答案 ,它幫助我生成了我想要的唯一值列表,但是,我並不需要所有結果。 有沒有什么方法可以過濾select的結果,或者有其他方法可以做到這一點?

我在想一些類似的事情:

@results = MyModel.select("DISTINCT(columnForDistinction)", :myBoolean => false)

要么

@results = MyModel.select("DISTINCT(columnForDistinction)", :someString => stringImLookingFor)

目前,我無法在查詢中過濾結果,因此我遍歷返回的數組,僅列出將boolean設置為false的結果,如下所示:

<% @results.each do |result| %>
  <% if !result.myBoolean %>
    #do stuff here
  <% end %>
<% end %>

<% @results.each do |result| %>
  <% if result.someString == stringImLookingFor %>
    #do stuff here
  <% end %>
<% end %>

有沒有更好的方法可以做到這一點?

ActiveRecord查詢方法是可鏈接的。 您可以調用多個,並在使用結果時將它們全部構建到查詢中。 對於條件,您將使用where 嘗試類似:

@results = MyModel.select("DISTINCT(columnForDistinction)").where(:myBoolean => false)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM