That should get rid of a lot of joins in your sql statement. Also you can consider not doing the aggregation in sql but load the unaggregated records and let Qlikview do the aggregation in the charts.
If that's not an acceptable option, ask your local friendly database administrator to help speed up your sql statement. Perhaps there are some columns where an index can be added. Or turn your sql statement into a materialised/indexed view.