gpt4 book ai didi

mysql - 更改 Sequelize 的 Distinct 的别名

转载 作者:行者123 更新时间:2023-11-29 16:18:35 24 4
gpt4 key购买 nike

我在我的代码上使用以下查询

await to( mymodel.aggregate('cid', 'DISTINCT', {plain: false,where:{created_by:user.id}}));

并且查询输出放在控制台上是

SELECT DISTINCT(`cid`) AS `DISTINCT` FROM `mymodel` AS `mymodel` WHERE `mymodel`.`created_by` = 7;

我得到的输出如下

ids --------------- [ { DISTINCT: 9 }, { DISTINCT: 10 }, { DISTINCT: 11 } ]

我想将 DISTINCT 的别名更改为 id。我如何做到这一点,如下所示

ids --------------- [ { id: 9 }, { id: 10 }, { id: 11 } ]

最佳答案

我认为 .aggregate() 不支持别名字段,但将其转换为常规查询很简单。

await mymodel.findAll({
attributes: [ [ Sequelize.fn('DISTINCT', 'cid'), 'id' ] ],
where: { created_by: user.id }
});

在这里,我们利用 Sequelize.fn()cid 上创建 DISTINCT 并使用数组属性表示法将其别名为id。有关此的更多信息 here .

关于mysql - 更改 Sequelize 的 Distinct 的别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54644863/

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