gpt4 book ai didi

typescript - 通过使用 typescript 正确键入来对组进行 Sequelize

转载 作者:行者123 更新时间:2023-12-03 22:30:43 25 4
gpt4 key购买 nike

我想通过应用 SUM 和 COUNT 函数的 Sequelize 执行 GROUP BY 查询。我面临的问题是返回的类型中不存在新的聚合列名称。例如:

    const result = await SalesModel.findAll({
attributes: [
'partnerId',
'status',
[Sequelize.fn('count', Sequelize.col('value')), 'sales_num'],
[Sequelize.fn('sum', Sequelize.col('value')), 'sales_value'],
],
group: ['partnerId', 'status'],
raw: true
})
result[0] 在模型中定义了 partnerIdstatus 属性,但没有 GROUP BY 查询添加的 sales_numsales_value 属性。在这里打字的正确方法是什么?

最佳答案

只需扩展您现有的模型,如

interface IExtendedSalesModel extends SalesModel {
sales_num: number;
sales_value: number;
}

...


const results: IExtendedSalesModel = await SalesModel.findAll({
attributes: [
'partnerId',
'status',
[Sequelize.fn('count', Sequelize.col('value')), 'sales_num'],
[Sequelize.fn('sum', Sequelize.col('value')), 'sales_value'],
],
group: ['partnerId', 'status'],
raw: true
})

关于typescript - 通过使用 typescript 正确键入来对组进行 Sequelize ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67227405/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com