I´m not sure what to say. You should know the deal by now. We need DDL, sample data and expected results.
The query that I posted gives the exact same result as the query you posted. You would need to post sample data to demonstrate how the query is malfunctioning and how it should return the results.