两次使用同一张表时获取结果

时间:2019-01-14 16:11:40

标签: mysql sql asp-classic

我正在尝试获取两次连接同一张表的查询的结果,但是我似乎无法弄清楚如何获得结果。如何选择表格的正确版本?

我正在创建一个假期系统,用户可以在其中请求日期以休假,并让另一个用户接受或拒绝。因此,我要两次加入用户表,以显示谁提出了请求,以及谁处理了请求。

我可以在MySQL中获得结果,它列出了所有内容,但是使用ASP Classic获得结果的代码似乎不起作用。

这是我的SQL查询和获取数据的代码:

function onOpen() {
    var ui = SpreadsheetApp.getUi();

    ui.createMenu('The name of menu')
        .addItem('Button name', 'functionName').addToUi(); 
}

我希望可以使用“ ua”从用户表中获取值。和“ ub”。来获取正确的表,但是什么也不返回。

使用“ SELECT *”是否完全不可能?我是否必须预先声明所有变量才能使用同一张表两次?

1 个答案:

答案 0 :(得分:3)

您需要为每个名称分别提供别名:

SELECT v.*, u.user_name, ug.user_name as granted_user_name
FROM vacation v LEFT JOIN
     user u
     ON v.vacation_user = u.user_id LEFT JOIN
     user ug
     ON v.vacation_granted_id = ug.user_id ;

然后,当然要使用名称来获取它们:

uname = RS("user_name")
gname = RS("granted_user_name")