使用来自其他两个表的字段填充表

时间:2012-03-01 16:11:43

标签: database filemaker

我在Filemaker中有两个表:

  • tableA(包括字段idA(例如a123),dateprice)和

  • tableB(包括字段idB(例如b123),dateprice)。

如何使用字段tableC创建一个新表id,其中填充了idAidB(其他字段用于计算两个表的组合数据?)

3 个答案:

答案 0 :(得分:1)

唯一的方法是编写脚本(用于重复使用)或“手动”执行此操作(如果这是一个临时过程)。细节取决于具体情况,请澄清。

更新:对不起,我其实忘记了这个问题。我假设ID字段甚至不跨表重叠,您不需要多次添加相同的记录,而是更新它。在这种情况下,最简单的脚本就是这样:

Set Variable[ $self, Get( FileName ) ]
Import Records[ $self, Table A -> Table C, sync on ID, update and add new ]
Import Records[ $self, Table B -> Table C, sync on ID, update and add new ]

“导入记录”步骤通过相当复杂的对话框进行管理,但想法是从同一文件导入(您只需在其中键入file:<YourFileName>),格式为FileMaker Pro,然后设置字段映射。确保选择更新匹配记录添加剩余记录选项,并选择ID字段作为要同步的密钥文件。

答案 1 :(得分:0)

这将是一个FileMaker脚本。它可以作为脚本触发器运行,但是它不会对用户无缝。您最好的选择是创建表,然后根据需要(手动)运行脚本来构建表C.如果您有FileMaker Server,则可以安排此脚本定期运行以使Table C保持最新。< / p>

答案 2 :(得分:0)

也许您可以使用 select into 语句。 我不确定您是否希望使用TableA和TableB中的计算字段,或者您的意图是否只计算同一个表中的字段?

如果tableA.IdA也存在于tableB.IdA中,您可以加入这两个表并选择进入。

否则,您为每个表运行一次语句。

Select into statement

Select tableA.IdA, tableA.field1A, tableA.field2A, tableA.field1A * tableB.field2A
into New_Table from tableA

编辑:错过了你提到FileMaker的部分。 但也许你可以在数据库上编写脚本,然后放弃表格。