Thanks a lot. Sergey.
I replaced
ON m.f_year + m.type_code + m.sal_no = d.f_year + d.type_code + d.sal_no
with
ON m.f_year = d.f_year AND m.type_code = d.type_code AND m.sal_no = d.sal_no
It changed everything. I got 6200 in just matter of seconds.
1. What's the difference between them? If the first 1 is not correct then why SQL accepts it?
2. I am overusing LEGT OUTER JOINs what's the alternet?
3. Everytime i format the query and save it in View Desigener and reopen It looses my format.
>It seems that you're overusing LEFT OUTER JOINs. Do you really need all of them to be such?
>All JOIN expressions are incorrect. SQL Server does not have compound indexes so they cannot be optimized. The join should be on each column separately
>
>INNER JOIN dbo.sal_dtl AS d
> ON m.f_year + m.type_code + m.sal_no = d.f_year + d.type_code + d.sal_no
>
>
>
>INNER JOIN dbo.sal_dtl AS d
> ON m.f_year = d.f_year AND m.type_code = d.type_code AND m.sal_no = d.sal_no
>
>
>
>
>I also would recommend to reformat the query for readability.
>