我知道的新人问题。
我有一个包含大约10个字段的表,其中一个字段是一个类别字段。由于多种类别,我需要这个字段存在。但是,此字段中的一个类别是错误的,并且正在重复结果。
那么我可以删除表格中CatDescription字段中包含“Type320”的所有记录,以及如何记录?我想在这张桌子上保留其他东西;只需要摆脱那个在那个领域中的记录
非常感谢!
编辑:谢谢你的回答,我不知道怎么做,所以这非常有帮助但是,这比我想象的要复杂得多。我提供的原始数据带有这些重复记录(在某些情况下只重复,但很容易隔离)。这些原始数据每月以几种电子表格形式提供给我。
这一切都与这些ID号相关,并且有10个字段(xls列)。正如我之前所说的,其中一个是类别描述字段(抱歉,这不是查找)在某些地方,这些记录会自动在输出上重复,因为在数据库中它来自,它必须有一个特定的子类别“类型“
所以....每次复制时,所有字段中的每一位信息都完全相同,但CatDescription除外(一个是Type320,重复记录类型是“Type321”)。但是,在某些情况下,Type321本身有效(在这种情况下,没有匹配的数据行和Type320 catdescription)。通过匹配,我指的是特定记录的所有字段中的所有数据。
非常明确的绝对是,如果具有Type320 CatDescription的记录的所有字段(数据内)匹配具有Type321 CatDescription的记录中的所有字段(数据),那么我可以删除包含Type321 CatDescription的记录。这是正确的,因为这是发生此重复的唯一情况,通常并非所有这些都应该匹配。
这允许所有具有Type320和Type321数据(完全不匹配)的唯一记录保留;只是它应该。这对我来说很有意义(希望你也是这样:/)但是它可以完成,以及如何完成?
谢谢,因为这是我的头脑。我宁愿知道如何在访问中做到这一点,但xls解决方案同样值得欣赏。如果能完成工作,我会在ppt做到这一点! :)答案 0 :(得分:5)
我会尝试使用这两个查询中的一个:
DELETE FROM table WHERE CatDescription LIKE '%Type320%';
DELETE FROM table WHERE CatDescription LIKE '*Type320*';
这是因为Access数据库引擎可能使用*(ANSI-89查询模式,例如DAO)而不是%(ANSI-92 Query Mode,例如OLE DB / ADO)用于通配符。
或者,这与ANSI查询模式无关:
DELETE FROM table WHERE CatDescription ALIKE '%Type320%';
请注意,Access数据库引擎的ALIKE
关键字不受官方支持。
答案 1 :(得分:1)
CatDescription字段是否会查看另一个表?它是对那些创建所谓的重复结果的表的查询吗?
如果是这样,请小心指责具有CatDescription的表。检查查找表以查看是否在那里找到Type320一式两份。
如果您没有正确隔离问题,那么您可能会在不解决问题的同时删除良好的记录。