小编Ket*_*ray的帖子

Sequelize GROUP BY 仅在主表上聚合,而不是在连接中的完整连接表上聚合

我有五个表USER_ATTRIBQUESTION_MAINREPLY_MAINCATEGORY_MAINQSTN_CATG如下一个相关的另一个问题:

m.QUESTION_MAIN.belongsTo(m.USER_ATTRIB, { foreignKey: 'POSTER_I', targetKey: 'USER_I'});
m.QUESTION_MAIN.hasMany(m.REPLY_MAIN, { foreignKey: 'QSTN_I' });
m.QUESTION_MAIN.belongsToMany(m.CATEGORY_MAIN, { through: m.QSTN_CATG, foreignKey: 'QSTN_I' });
m.QUESTION_MAIN.hasMany(m.QSTN_CATG, { foreignKey: 'QSTN_I' });
Run Code Online (Sandbox Code Playgroud)

我想运行查询QUESTION_MAIN以获取有关问题的详细信息。需要的细节之一是问题的回复数量,可以通过以下方式查询

SELECT COUNT(REPLY_MAINs.QSTN_I) GROUP BY QSTN_I;

我要运行的组合查询是:

SELECT `QUESTION_MAIN`.*
       ,`USER_ATTRIB`.`USERATTRIB_ID` AS `USER_ATTRIB.USERATTRIB_ID`
       ,`USER_ATTRIB`.`USER_NAME` AS `USER_ATTRIB.USER_NAME`
       ,`QSTN_CATGs`.`QSTN_CATG_ID` AS `QSTN_CATGs.QSTN_CATG_ID`,
       ,`QSTN_CATGs`.`CATG_I` AS `QSTN_CATGs.QSTN_CATG_I`
       ,`REPLY_MAINs`.`REPLY_ID` AS `REPLY_MAINs.REPLY_ID`
       , COUNT(`REPLY_MAINs`.`QSTN_I`) AS `REPLY_MAINs.REPLY_COUNT`
FROM (
        SELECT `QUESTION_MAIN`.`QUESTION_ID`
               , ( 6371 * acos( cos( radians(13.0508629) ) * cos( radians( QSTN_LOC_LAT …
Run Code Online (Sandbox Code Playgroud)

mysql join node.js sequelize.js

2
推荐指数
1
解决办法
4631
查看次数

标签 统计

join ×1

mysql ×1

node.js ×1

sequelize.js ×1