I’m often asked by my clients, when pulling data, if they should use a report or a query. The answer, of course, is it depends on the final use of the information that is output.
A simple rule of thumb is that if you need to present the data externally (e.g., a membership listing, an event registrants list, badges, or name-tents), you should use a report. Also, if it is data that you pull consistently and frequently over time (e.g., monthly membership data), reports are better than queries.
If the data is only going to be used internally, you can probably use a query.
However, having said that, I strongly encourage my clients to use reports, rather than queries, whenever possible. There are two primary reasons for this:
- Reports force you to correct the data at the source. Because reports present data that is “static” in the sense that the output cannot be modified (think pdf), if there is an error on the report (e.g., a name is misspelled), then the data must be changed in the database, rather than directly on the report. The result is that the data is correct for the next person that needs it.
- Different users using the same report should get the same result. Reports typically don’t allow you to change the query source, other than perhaps allowing for certain criteria to be changed at runtime (e.g., entering a date range on a dues renewal report). Because the report is using the same criteria each time it is run, the results will be consistent. Contrast this with a query tool that allows you to change any and all criteria, and you can see where queries can create a lot of consternation among staff if even one query line is different.
So look at the data you’re pulling. Are you using queries more than you should?