Questa query"Ordina per" risultato di "raggruppa per" conteggio?
Message.where("message_type = ?", "incoming").group("sender_number").count
mi restituirà un hash.
OrderedHash {"1234"=>21, "2345"=>11, "3456"=>63, "4568"=>100}
Ora voglio ordinare per numero di ciascun gruppo. Come posso farlo all'interno della query.
Nopes non funziona per me .. –
Quale motore di database stai usando? Quale versione di rail e qual è il sql generato? Ho appena avuto un caso di prova (modello diverso) che funziona bene su rotaie 3.0.7 ... ad es. '@test = Price.where ('price is not null'). group (: price_date) .order ('count_price asc'). count ('price')', che genera 'SELECT COUNT (" prices "." price ") AS count_price, price_date AS price_date FROM" prices "WHERE (il prezzo non è nullo) GROUP BY price_date ORDINA PER count_price asc' –
Grazie mille per questo. Questo mi ha risparmiato così tanto tempo rispetto alla mia domanda rispetto a come lo stavo facendo prima! La lezione più importante: ho imparato che il metodo count 'genererà una colonna di output con il nome count_ {column}'! Grazie! – Yavin4