我有一个SQL查询涉及同一张表两次,我需要将该表别名为两个不同的别名。但我无法弄清如何在Knex中组合它。
有一个“Words”表和一个“Users”表。Words表有两个外键,“author_id”和“winner_id”,引用了Users表的“id”列。
以下是我正在尝试在Knex中编写的SQL:
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()方法只用于给子查询起别名吗?我不应该期望它用于给表格起别名吗?
Users us
,必须提供AS
关键字。 - jirkamat