小程序
小游戏
企业微信
微信支付
扫描小程序码分享
- 假如我有2张表 A和B,A存储了杂货店的上架商品,B存储了杂货店每种商品的价格,并且使用键值goods_id存储着上架商品的ID。
那么我想一次性查询出上架商品和其对应的价格,组在一个json给小程序返回,这个操作在云函数中怎么操作? 使用return总是拿不到值,可能是异步的问题?
- 求各位大侠帮忙看看,怎么写呢?
4 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
象mysql那样的多表联合查询是不可能会有的。
云数据库看上去是参考mongoDB的设计,以后也只会继续参考mongo的。
mongo目前都没法提供多表查询,更不要说小程序云数据库了。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
确实有点无奈,但你的需求我会传达一下的
来自官方的打击
谢谢!
好无奈
也许以后会更新的,这个只是暂时的,官方没说以后绝对不会支持联合查询。
希望吧,目前只能这么去操作:
// 云函数入口函数
exports.main = async (event, context) => {
// collection 上的 get 方法会返回一个 Promise,因此云函数会在数据库异步取完数据后返回结果
let goods= await db.collection(
'goods'
).get()
for
(let item of goods.data) {
let id = item._id;
//查询商品价
let _price = await db.collection(
'goods_prices'
).where({
goods_id: id
}).get()
item.goods_price = _price
}
return
goods
没办法的办法,配额不够记得提前申请
可以使用聚合查询lookup
参见
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/aggregate/Aggregate.lookup.html
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
象mysql那样的多表联合查询是不可能会有的。
云数据库看上去是参考mongoDB的设计,以后也只会继续参考mongo的。
mongo目前都没法提供多表查询,更不要说小程序云数据库了。
确实有点无奈,但你的需求我会传达一下的
来自官方的打击
谢谢!
好无奈
也许以后会更新的,这个只是暂时的,官方没说以后绝对不会支持联合查询。
希望吧,目前只能这么去操作:
// 云函数入口函数
exports.main = async (event, context) => {
// collection 上的 get 方法会返回一个 Promise,因此云函数会在数据库异步取完数据后返回结果
let goods= await db.collection(
'goods'
).get()
for
(let item of goods.data) {
let id = item._id;
//查询商品价
let _price = await db.collection(
'goods_prices'
).where({
goods_id: id
}).get()
item.goods_price = _price
}
return
goods
}
没办法的办法,配额不够记得提前申请
可以使用聚合查询lookup
参见
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/aggregate/Aggregate.lookup.html