static doesSelect(builder, selectionInBuilder, selectionToTest) {
    selectionInBuilder = Selection.create(selectionInBuilder);
    selectionToTest = Selection.create(selectionToTest);

    if (selectionInBuilder.column === '*') {
      if (selectionInBuilder.table) {
        if (selectionToTest.column === '*') {
          return selectionToTest.table === selectionInBuilder.table;
        } else {
          return (
            selectionToTest.table === null || selectionToTest.table === selectionInBuilder.table
          );
        }
      } else {
        return true;
      }
    } else {
      const selectionInBuilderTable = selectionInBuilder.table || builder.tableRef();

      if (selectionToTest.column === '*') {
        return false;
      } else {
        return (
          selectionToTest.column === selectionInBuilder.column &&
          (selectionToTest.table === null || selectionToTest.table === selectionInBuilderTable)
        );
      }
    }
  }
Returns true if `selectionInBuilder` causes `selectionToTest` to be selected.

Examples that return true:

doesSelect(Person.query(), '*', 'name')
doesSelect(Person.query(), 'Person.*', 'name')
doesSelect(Person.query(), 'name', 'name')
doesSelect(Person.query(), 'name', 'Person.name')