Doğru anladıysam neden distinct kullanmaya çalışıyorsunuz , kitapları sıralarken aynı sorguda kitaba yapılan yorum sayısını mı çekmek istiyorsunuz ?

Eğer yukarıda dediğim gibiyse

select b.* , (select count(id) from yorum where yorum_kitap = b.id) as yorum_sayisi FROM books  as b WHERE b.status = '1'
şeklinde kitapları listelerken yorum_sayisi nıda alabilirsiniz.