2012-06-04 12 views

Odpowiedz

0

Twój problem polega na tym, że lewe połączenie znajduje identyfikator utworu dla każdego identyfikatora albumu. Rozwiązania:

right join

Podzapytanie kwot, przy założeniu, że sequel obsługuje: left join (select album_id, count(album_id) as count from tracks group by album_id) t on

cieśnina się from albums a, tracks t where t.album_id=a.id zamiast przyłączyć.

+0

Masz rację co do właściwego łączenia, ale mówiłem o strukturze rubinu Sequel, a nie prostym SQL. Dzięki i tak! – RooSoft

+0

Edytowałem pytanie, aby zastąpić wewnętrzne sprzężenie prawym złączeniem. – RooSoft

+0

* facepalm * ... nie jestem wtedy pewien. – zebediah49

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