谢谢你看了这个问题。快把我逼疯了。
我有两个不同领域的数据库,它们是:
dataset = projectproducts
产品数据集中的字段ID = product //匹配ID
字段ID = productQuantity //返回数字dataset = products
字段ID =项目产品中的_id //匹配乘积字段值
字段ID = productPrice //返回号
我试图查询项目产品数据集,并从product字段检索条目(其中数百项)和从productQuantity字段检索数量。
然后基于product字段(即产品数据集中项/行的)查询产品数据集并从productPrice字段检索结果。
然后,我想把
productQuantity结果xproductPrice结果
将所有值相加到,以检索最终金额。
发布于 2021-04-13 18:06:06
我不确定在涉及数据集时有什么不同,但是这里有一种直接使用wixData的方法
import wixData from 'wix-data';
$w.onReady(async function () {
const {items: projectproducts} = await wixData.query('projectproducts').find();
const projectproductsQuery = wixData.query('products');
projectproducts.forEach(pp => {
projectproductsQuery.eq('_id', pp.product)
})
const {items: products} = await projectproductsQuery.find();
const productsPrices = products.reduce((acc, current) => ({
...acc,
[current._id]: current.price
}), {});
console.log({products, productsPrices, projectproducts});
const sum = projectproducts.reduce((acc, current) => {
return acc + productsPrices[current.product] * current.productQuantity;
}, 0);
console.log(sum);
});演示:https://moshef9.wixsite.com/agg-collections (打开console获取有关集合的更多信息)
https://stackoverflow.com/questions/67071871
复制相似问题