All I really want to know is whether or not my query returned results or not, but an actual row count value would be nice.
Example:
$query = db_select('node', 'n');
$query->fields('n', array('nid', 'title', 'status'));
You could load all your results into an array using the handy fetchAll()
method of the query and then count the array as normal. This will result in only one query being executed:
$query = db_select('node', 'n');
$query->fields('n', array('nid', 'title', 'status'));
$results = $query->execute()->fetchAll();
$count = count($results);
foreach ($results as $result) {
// ...
}