db_query performance This is a more general question about db_query() performance.

I have this function to create an API resource with Services module, and I need to get about 10 fields belonging to several nodes. 
Basically I have a list of nids and create an array containing information from their fields. The nodes have a lot more fields than I need so doing node_load to get the info is really slow, so at the moment I am geting the info using db_query() calls for each field that I need.

My question is: would it perform better if I only have one db_query with about 10 inner joins? or should I leave it as 10 separate db_queries? 

I am going to do some performance tests, but I thougt someone might have some insight or explanation on why one would perform better tha. the other.
Install entitycache - it will load the nodes quickly from a persistent cache ( e.g memcache, but db ok )
Use EntityFieldQuery to fetch the relevant nodes.


e.g:

  // Get published articles created in last 7 days.
  $query = new EntityFieldQuery();
  $query-&gt;entityCondition('entity_type', 'node')
        -&gt;entityCondition('bundle', 'article')
        -&gt;propertyCondition('status', 1)
        -&gt;propertyCondition('created', strtotime('-7 days', REQUEST_TIME), '&gt;');
  $result = $query-&gt;execute();
  if(!empty($result['node'])){
    // These will be loaded from entitycache
    $nodes = node_load_multiple(array_keys($result['node']));
    // Process result nodes
    foreach($nodes as $node){
      // Do stuff
    }
  }