Truy vấn này"Sắp xếp theo" kết quả của "nhóm theo" tính?
Message.where("message_type = ?", "incoming").group("sender_number").count
sẽ trả về giá trị băm.
OrderedHash {"1234"=>21, "2345"=>11, "3456"=>63, "4568"=>100}
Bây giờ tôi muốn sắp xếp theo số lượng của mỗi nhóm. Làm thế nào tôi có thể làm điều đó trong truy vấn.
Nopes của nó không hoạt động với tôi .. –
Bạn đang sử dụng công cụ cơ sở dữ liệu nào? Phiên bản đường ray nào và sql được tạo ra là gì? Tôi vừa có một trường hợp thử nghiệm (mô hình khác nhau) làm việc tốt trên đường ray 3.0.7 ... ví dụ '@test = Price.where ('price is not null') nhóm (: price_date) .order ('count_price asc') đếm ('price')', tạo ra 'SELECT COUNT (" price "." price ") AS count_price, price_date AS price_date TỪ" giá "WHERE (giá không phải là null) GROUP BY price_date ORDER BY count_price asc ' –
Cảm ơn bạn rất nhiều vì điều này. Điều này đã tiết kiệm cho tôi rất nhiều thời gian truy vấn của tôi so với cách tôi đã làm nó trước đây! Bài học quan trọng nhất: Tôi đã học được rằng phương pháp đếm 'sẽ tạo ra một cột đầu ra với tên count_ {column}'! Cảm ơn bạn! – Yavin4