У меня есть SQL-запрос, который ссылается на одну и ту же таблицу дважды, и мне нужно перечислить таблицу в два отдельных псевдонима. Я не могу понять, как составить это с Knex.Псевдоним таблицы в Knex
Существует таблица «Слова» и таблица «Пользователи». В таблице Words есть два внешних ключа: author_id и winner_id, ссылающиеся на столбец «id» таблицы «Пользователи».
Вот SQL я пытаюсь сочинять Knex:
SELECT w.*, ua.name, uw.name FROM Words AS w
INNER JOIN Users AS ua ON w.author_id = ua.id
LEFT JOIN Users AS uw ON w.winner_id = uw.id
Я немного потерял о том, как сделать это в Knex. Моя первая попытка не включала aliasing, и поэтому я получил ошибку «таблица, используемая более одного раза». Когда я попытался использовать метод .as(), knex жаловался на отсутствие предложения .from(). Используется ли метод .as() для подзапросов псевдонимов, и я не должен ожидать, что он будет использоваться для таблиц псевдонимов?
Большое спасибо за обмен! –