Javascript 使用多对多关系字段连接两个表

Javascript 使用多对多关系字段连接两个表,javascript,mysql,google-apps-script,Javascript,Mysql,Google Apps Script,我正在谷歌数据工作室工作,试图从第三方系统获取数据。在这种情况下,第三方系统会出现问题,因为它不允许SQL连接。因此,我分别使用两个URL获取数据,并将两个表(customer\u order表和customer\u order\u Demand表)连接起来。但问题是有一个字段(Order_NO)在一个表中具有多对多关系。根据我的代码,在连接两个表之后,我只得到Order_No列中的第一个值。我想按相应日期显示每个项目的订单数量 Customer Order Demand Table

我正在谷歌数据工作室工作,试图从第三方系统获取数据。在这种情况下,第三方系统会出现问题,因为它不允许SQL连接。因此,我分别使用两个URL获取数据,并将两个表(customer\u order表和customer\u order\u Demand表)连接起来。但问题是有一个字段(Order_NO)在一个表中具有多对多关系。根据我的代码,在连接两个表之后,我只得到Order_No列中的第一个值。我想按相应日期显示每个项目的订单数量


  Customer Order Demand Table                                        
+-----------------------------+ 
| id  | item     |    Date    |         
|-----|----------|------------| 
|  1  |  BLU     | 7/10/2020  |  
|  2  |  PM      | 7/20/2020  |   
|  3  |  BLU     | 7/23/2020  |          
+-----------------------------+ 


    Customer Order Table                                        
+---------------------------------------------------------+
| id  |  COD_id         |  Order_NO      |   Date         |
|-----|----------------------------------|----------------|
|  1  |      1          |  #100          |    7/10/2020   |
|  2  |      1          |  #130          |    7/10/2020   |
|  3  |      2          |  #200          |    7/20/2020   |
|  4  |      3          |  #500          |    7/23/2020   | 
+---------------------------------------------------------+

                   Expected  Table                                        
+-----------------------------------------------+
|     |  Item    |    Date    |  Order_NO       |
|-----|----------|------------|-----------------|
|  1  |  BLU     | 7/10/2020  |  #100 /#130     |
|  2  |  PM      | 7/20/2020  |  #200           |
|  3  |  BLU     | 7/23/2020  |  #500           |        
+-----------------------------------------------+



 
  • a的第二个表:

  • 表1显示了一组对象:

    const finalArr = table1.map(
      ([id,Item,Date]) =>
          ({Item,Date,
          "Order_No": table2map.get(id).join()})
    )
    

使用正确的数据类型存储数据。那你看看,然后再联系我们。
const table2map = table2.reduce(
  (mp,[codId,ordNo]) => 
      mp.set(codId,
       mp.has(codId)
        ? [...mp.get(codId),ordNo]
        : [ordNo]
      ), new Map
)
const finalArr = table1.map(
  ([id,Item,Date]) =>
      ({Item,Date,
      "Order_No": table2map.get(id).join()})
)