0

在兜了一圈圈之后,我几乎已经确定了我的工作项目,最终我开始涉足 Google Maps 和 Fusion 表格示例,使用Derek Eder 的可搜索模板示例. 我的挑战在于复选框,更重要的是融合表和查询中的数据。Derek 的示例(参见链接)仅依赖于名为“Type”的列,该列在任何给定行中都包含一个数字。现在我有相同的列,但我的挑战在于它可以包含多个单个数字。所以'1,3'或'2,3'或'1,2,4,5'。在我的情况下,表明商店销售这些类型的产品,其中 1 可能是包,3 可能是网球拍等。现在我今晚无法确定这个查询和代码,时间紧迫,所以我不得不来到 StackOverflow 并向您寻求帮助。目前,它没有

从数据布局来看,将其输出为带有 1 或 0 的单独列相对简单,但我严格遵循 Derek 的示例,因为他甚至在代码中添加了注释。

好吧,无论如何,希望你们已经掌握了它。如果您需要链接,请告诉我,但目前我几乎没有离开 Derek 的示例,尽管我不需要这样做。

在此先感谢,理查德。


感谢您的回复。在这种情况下,数据库是导入到 Fusion Tables 的标准电子表格。我很欣赏你所说的,但这不是一个选项,因为这是我们在这里讨论的 Excel,并且该文件是从营销部门传递下来的。

我拥有的融合表的当前格式是沿着这些线

accountid | add1 | add2 | add3 | poastcode | prodtype1 | prodtype2 | prodtype3 |     prodtype4 
==========================================================================================
 123456     blah   blah   blah   SG18 1DF      1             1          0           0
 234567     blah   blah   blah   SG18 2DF      0             0          1           0

我只是看看是否可以使用 Derek Eder 的搜索模板示例将上述内容翻译为使用他的特定过滤说明。所以下面是一个想法。

accountid | add1 | add2 | add3 | poastcode | type |
===================================================
 123456     blah   blah   blah   SG18 1DF    1,2,4

或者如果这不起作用,

accountid | add1 | add2 | add3 | poastcode | type |
===================================================
 123456     blah   blah   blah   SG18 1DF    1 2 4

我对实施您的建议有很大的担忧,因为它实际上超出了该项目的范围,并且连接表也不会简单地增加总记录数,从而错误地增加记录数。我不想解决一个挑战然后再创造另一个挑战。

希望你欣赏我在哪里。我只需要将它保存在电子表格世界中。

4

1 回答 1

2

如果你从数据库的角度来看你的问题,你不应该使用单个单元格来包含多个值,因为它只会给你带来麻烦和麻烦。有时提高性能可能是个好主意,但只有在你知道自己在做什么的情况下才会出现这种情况:-)

您的问题可以通过两张表轻松解决。您的第一个表包含您当前的数据,第二个表用于将您的数据映射到一个或多个类型。

  1. 数据

    data_id | data | location
    ===========================
       1    |  xy  | somethere 
       2    |  az  | moon
      31    |  bla | elm street
    
  2. 映射到类型

    data_id | type
    ================
       1    |  1
       1    |  3
       1    |  4
      31    |  2
    
  3. 然后你可以JOIN 两个表来得到想要的结果:

    data_id | data | location   | type
    ===================================
       1    |  xy  | somethere  | 1
       1    |  xy  | somethere  | 3
       1    |  xy  | somethere  | 4
       2    |  az  | moon       |
      31    |  bla | elm street | 2
    

在 Google Fusion Tables 中,您可以通过合并两个表来连接它们,这等于 a LEFT OUTER JOIN

After that you have again the old setting with only one type per cell, but you're able to express that one row has multiple types.

于 2012-11-14T09:51:42.223 回答