【问题标题】:Join multiple tables - Flutter - Firebase加入多个表 - Flutter - Firebase
【发布时间】:2019-02-03 06:52:53
【问题描述】:

我有三个系列:汽车、品牌、模型。汽车有品牌、型号和价格。我之所以有单独的系列是因为我想最终自己展示品牌和模型。

我想展示每辆车的品牌、型号和价格。

在 SQL 中,我可以加入表格并按 ID 进行比较。我不确定如何在 nosql 中复制连接。

【问题讨论】:

  • 您可以将所有这些数据放入一个集合中,仍然可以显示品牌、型号和汽车。

标签: sql firebase nosql flutter google-cloud-firestore


【解决方案1】:

在 NoSQL 中,您不能在一个查询中完成。你必须分成多个查询:

第一个查询:从主表中获取数据(在您的情况下:Cars 模块)

第二次查询:从连接表中获取数据(Makes, Models)

例如使用 JavaScript

    carTable.on('value', function (snapshot) {
        var makeID = snapshot.val().makeID; 
        makesTable.child('makes').child(makeID).once('value', function(mediaSnap) {
            console.log(makeID + ":" + mediaSnap.val());
        });

         var modelsID = snapshot.val(). modelsID; 
        modelsTable.child('models').child(modelsID).once('value', function(mediaSnap) {
            console.log(modelsID + ":" + mediaSnap.val());
        });


    });

所以,您必须分两步加入表格。

【讨论】:

    猜你喜欢
    • 2020-08-05
    • 2021-05-17
    • 2020-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-30
    • 1970-01-01
    相关资源
    最近更新 更多