private void addRefColsQueried(
     CubeQueryContext cubeql, TrackQueriedColumns tqc, DenormalizationContext denormCtx) {
   for (Map.Entry<String, Set<String>> entry : tqc.getTblAliasToColumns().entrySet()) {
     // skip default alias
     if (entry.getKey() == CubeQueryContext.DEFAULT_TABLE) {
       continue;
     }
     // skip join chain aliases
     if (cubeql.getJoinchains().keySet().contains(entry.getKey().toLowerCase())) {
       continue;
     }
     AbstractCubeTable tbl = cubeql.getCubeTableForAlias(entry.getKey());
     Set<String> columns = entry.getValue();
     for (String column : columns) {
       CubeColumn col;
       if (tbl instanceof CubeInterface) {
         col = ((CubeInterface) tbl).getColumnByName(column);
       } else {
         col = ((Dimension) tbl).getColumnByName(column);
       }
       if (col instanceof ReferencedDimAttribute) {
         // considering all referenced dimensions to be denormalized columns
         denormCtx.addReferencedCol(
             column, new ReferencedQueriedColumn((ReferencedDimAttribute) col, tbl));
       }
     }
   }
 }