mysql - 续集模型中两列之间的乘法
问题描述
如何将表的两列(数量 * 单位)乘以 sequelize 的 findAll
Products.findAll({
attributes:
[
'id',
'Product',
'Quantity',
'Unit'
]
});
解决方案
您可以使用sequelize.literal来计算一些 SQL 表达式(子查询、数学计算等):
Products.findAll({
attributes:
[
'id',
'Product',
'Quantity',
'Unit',
[sequelize.literal('(Quantity*Unit)'), 'Cost']
]
});
要访问包括在 sequelize.literal 中计算的所有属性,只需映射调用get({ plain: true })的结果。
const plainProductObjects = products.map(x => x.get({ plain: true })
推荐阅读
- r - 如何在 R 中使用带状覆盖制作等高线图以显示海底
- javascript - 为数组 Generator JS 中的每个项目生成产量
- c# - 当作为实现接口的参数给出时,为什么不能自动推断类型参数?
- python - 更改熊猫数据框中的负时间增量
- c# - Unity:获取附加了内容大小调整器的游戏对象的高度
- multithreading - C++中的多线程生产者/消费者
- reactjs - Gatsbyjs + Netlify CMS 如何在博客文章中嵌入音频作为背景音乐
- python - 如何获得文本(不是语音,只有文本)的发音(语音)?
- reactjs - Redux:我的状态正在接收 '@@redux/INITi.8.gwam' Redux 状态未更新
- html - 在反应中选择一个文件夹目录而不扫描所选文件夹