首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用联接获得不同的数据--少数表对ORM进行后缀

使用联接获得不同的数据--少数表对ORM进行后缀
EN

Stack Overflow用户
提问于 2018-03-10 07:17:13
回答 1查看 1.6K关注 0票数 1

这是关于后缀ORM的,我正在为餐后应用程序开发节点js。MealPrice表(FK : mealId)链接到饭桌(PK : Id),饭桌(FK : RestaurantId)链接到餐厅表(PK : Id)。从“餐价”表没有直接连接到“餐厅”桌。我需要的是,如果我将"IsActive = true“状态传递给mealPrice表,并且应该得到餐馆(不同列表)列表。老实说,我在续写ORM方面没有多少经验。这就是我现在所尝试的,它返回mealPrice和餐餐数据。

代码语言:javascript
运行
复制
        global.mealpricing.belongsTo(global.meal, { targetKey: 'id', foreignKey: 'mealId' });
        global.meal.belongsTo(global.resturant, { targetKey: 'id', foreignKey: 'resturantId' });

        global.mealpricing.findAll({
            include: [{
                model: global.meal,
            }],

            where: { isActive: true }
        }).then(meals => {
            res.send(meals);
        });

我关心的是如何获得JSON唯一餐厅的不同列表?请给我一个方向。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-10 10:13:47

  • 使用带饭桌的进餐价格内部连接获取所有餐厅ID。
  • 通过这些id查找所有餐馆,在'id‘列上使用不同的操作符 Global.mealpricing.findAll(其中:{isActive: true},包括:{ model: global.meal,attributes:'resturantId‘}) .then(mealPricingDocs => { const restaurantIds = mealPricingDocs.map(i => i.meal.restaurantId);返回global.restaurant.findAll({ id:{id:{ $in: restaurantIds },distinct:'id’});}) .then(餐馆=> (餐馆));
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49206415

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档