用于搜索一个字段并为另一个字段生成结果的公式

时间:2014-02-04 13:05:05

标签: ms-access excel-2013 ms-access-2013

我正在尝试在访问中创建一个新字段,该字段取决于另一个字段的内容。例如,字段1包含书籍的标题,如果在字段1(标题)中找到某个单词(字符串之外),我希望字段2包含1(或是)。例如:(如果字段1包含“gang”,则字段2 = 1,否则为0)。

我能够将它写成excel表格为:=IF(OR(ISNUMBER(SEARCH("gang",D2)),ISNUMBER(SEARCH("gangs",D2))),1,0)。我知道我可以将该表格重新导入Excel,但我的大部分格式都丢失了,任何更新或新公式都会很乏味

有没有办法在访问中创建一个反映此公式的新字段?

2 个答案:

答案 0 :(得分:1)

您无法像在Excel中那样直接在Access中的单元格中编写公式。但是您可以编写SQL命令来实现它。我现在不确定语法,但在SQL Server中语法如下:

UPDATE YourTableName SET FieldName = 1 where CHARINDEX('gang',FieldToBeSearched) > 0

答案 1 :(得分:1)

您可以通过查询中的字段表达式获得所需内容。

SELECT
    Field1,
    IIf(InStr(1,[Field1],'gang',1),1,0) AS Field2
FROM YourTable;

使用该方法,表中不存在Field2。相反,当您想要查看Field2时,可以使用该查询。这意味着当Field2值发生变化时,您无需修改​​Field1值。

但是,如果您需要Field2作为实际字段且Access 2013数据库是ACCDB格式,则可以将其设为计算字段。

Calculated Field expression