If your report/program does not select data, it's development is probably not finished. If your programs selects great amounts of data, it will probably be slow in performance. Other than making sure the data itself is selected efficiently (check the articles on performance tuning) there is another fact on data selection. Whenever a selection is done, a communication channel to the database server is opened, the request is "handed over" and the results are received. That's quite a suite of actions, which are all taken care of by the system.
Know this: if you scatter selection logic all over your report, the communication channel will close or fall asleep. A few nano seconds later your new request comes in and the system will need to wake up, have some tea, start up connections and get the show on the road again. All of this is consuming valuable performance time. Thus: select all you need and work with what was selected. Ideally.