sql - count in LEFT JOIN and WHERE -


i have little problem left join want list of designs , on each design want display how many comments each design have.

i using left join

select ds.*, count(com.comment) countcom tdic_designs ds  left join tdic_comments com on (com.design_id = ds.id)  ds.approved = 1 , ds.hidden = 0 , com.approved = 1  group ds.id  order ds.date_added asc 

but doesn't work displays 1 design have 1 comment, have 2 designs in table, second design doesn't have comment.

if change sql to

select ds.*, count(com.comment) countcom tdic_designs ds  left join tdic_comments com on (com.design_id = ds.id)  group ds.id, com.approved, ds.approved  order ds.date_added asc 

that removing clause. bad select both designs , comments haven't been approved.

what miss / wrong?

move filters on comments on clause:

select  ds.*, count(com.design_id) countcom    tdic_designs ds left join         tdic_comments com on      com.design_id = ds.id         , com.approved = 1    ds.approved = 1         , ds.hidden = 0 group         ds.id order         ds.date_added asc 

Comments

Popular posts from this blog

django - How can I change user group without delete record -

java - Need to add SOAP security token -

java - EclipseLink JPA Object is not a known entity type -