2012-06-04 25 views

Trả lời

0

Vấn đề của bạn là việc kết hợp bên trái tìm ID bản nhạc cho từng ID album. Giải pháp:

right join

subquery của khoản tiền, giả sử phần tiếp theo hỗ trợ rằng: left join (select album_id, count(album_id) as count from tracks group by album_id) t on

một eo biển lên from albums a, tracks t where t.album_id=a.id thay vì tham gia.

+0

Bạn đang đúng về việc tham gia phù hợp, nhưng tôi đã nói về khung công tác của Ruby, chứ không phải SQL thuần túy. Dù sao cũng cảm ơn bạn! – RooSoft

+0

Tôi đã chỉnh sửa câu hỏi để thay thế kết nối bên trong bằng cách tham gia đúng. – RooSoft

+0

* facepalm * ... không chắc chắn sau đó. – zebediah49

5
DB[:albums___a]. 
    right_join(:tracks___t, :album_id=>:id). 
    select_group(:a__id). 
    select_more{count(:t__id)}