code: public static List<String[]> resultSetToStringArrayList(ResultSet resultSet) {
      List<String[]> stringArrayList = Lists.newArrayList();
      stringArrayList.add(getColumnLabels(resultSet).toArray(new String[] {}));
      if (resultSet.getRows() != null) {
        for (Row row : resultSet.getRows()) {
          try {
            stringArrayList.add(getRowStringValues(row).toArray(new String[] {}));
          } catch (IllegalArgumentException e) {
            throw new IllegalStateException("Cannot convert result set to string array list", e);
          }
        }
      }
      return stringArrayList;
    }
docs: Gets the result set as list of string arrays, which can be transformed to a CSV using {@code
  CsvFiles} such as
  
  <pre>
  <code>
  ResultSet combinedResultSet = Pql.combineResultSet(resultSet1, resultSet2);
  //...
  combinedResultSet = Pql.combineResultSet(combinedResultSet, resultSet3);
  CsvFiles.writeCsv(Pql.resultSetToStringArrayList(combinedResultSet), filePath);
  </code>
  </pre>
  
  @param resultSet the result set to convert to a CSV compatible format
  @return a list of string arrays representing the result set