nodejs subselect在sql select中

cigdeys3  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(341)

欧拉!
我正在做一个node.js应用程序。我的mysql数据库中有这样的表结构:

我的任务是获取表4的名称和相关的表7的名称。我知道表1的用户名和密码。是否可以创建一个查询-使用subselect-在获取值后不使用新的select调用所有时间回调?-就像下面-

con.connect(function(err) {  
    if (err) 
    {throw err }  
    con.query("SELECT id FROM Table_1 WHERE username = xyz AND password = aaa", 
        function (err, result) {
           if (err) {throw err};
           con.query("SELECT table_3_id FROM table2 WHERE Table_1_id = "+(result)+")", 
                  function(/*bla-bla*/){

                  };   
                }); 
    }
);

谢谢!

agyaoht7

agyaoht71#

我刚刚和我的开发负责人谈过,他给了我一个正确的解决方案-类似于@vivek doshi answer-:

SELECT  Table_4.names, Table_7.names
FROM    Table_1 , Table_2 , Table_3 , Table_4, Table_5, Table_6, Table_7
WHERE   Table_1.username and Table_1.password and 
        Table_2.Table_1_id = Table_1.id and 
        Table_2.Table_3_id = Table_3.id and
        Table_3.Table_4_id = table_4.id and
        Table_3.table_5_id = table_5.id and
        table_6.table_5_id = Table_5.id and
        table_6.table_7_id = table_7.id;
khbbv19g

khbbv19g2#

下面是如何通过一个查询实现这一点:

SELECT  Table_4.*
FROM    Table_1 , Table_2 , Table_3 , Table_4
WHERE   Table_1.username and Table_1.password and 
        Table_2.Table_1_id = Table_1.id and 
        Table_2.Table_3_id = Table_3.id and
        Table_3.Table_4_id = Table_4.id

我找不到表7名称的正确关系。但我想你会知道怎么做的。

相关问题