I have two different categories of things that are best laid out as individual collections, but I want to combine subsets from both collections to provide data for a repeater so that it lists something like the following.
Award Path
Course
Course
Exam 1
Course
Course
Exam 2
I would ideally just create a collection like the following, where each row would have either a course_ref or exam_ref value (never both). Then, I would combine the course and exam data for or with one dataset to create the repeater.

However, this doesn’t seem to be feasible. Does anyone know how to do it?
Not sure exactly if it is the right one what you are searching for, but you could for example use —> INCLUDE ← to include data from multiple DATABASES, when using → wixData <–, something in this direction…
Example: You have a databases and you want to include DATA of your existing REFERENCED-FIELDS inside your DATABASE, which refers to another DATABASE/COLLECTION.
Once i made an example for it …here…
https://russian-dima.wixsite.com/meinewebsite/how2-include
Perhaps it will help you to understand how that works.
Here we go…
import wixData from 'wix-data';
const DATABASE_A = "Collection";
const REFERENCE_FIELD1 = "author";
const REFERENCE_FIELD2 = "publisher";
wixData.query(DATABASE_A)
.include(REFERENCE_FIELD1,REFERENCE_FIELD2)
.find()
.then( (results) => {
if(results.items.length > 0) {
let items = results.items; console.log(items)
let firstItem = items[0]; console.log(firstItem)
let firstRefProp = firstItem.referenceField.propertyName;
console.log(firstRefProp)
let totalCount = results.totalCount;
let pageSize = results.pageSize;
let currentPage = results.currentPage;
let totalPages = results.totalPages;
let hasNext = results.hasNext();
let hasPrev = results.hasPrev();
let length = results.length;
let query = results.query;
} else {
// handle case where no matching items found
}
} )
.catch( (error) => {
let errorMsg = error.message;
let code = error.code;
} );