使用COUNT和MIN删除查询。 MS Access 2010

时间:2018-11-16 13:28:09

标签: duplicates ms-access-2010 delete-row

我正在尝试从数据提取中识别并删除重复项。

我已经设置了一个查询来按ENV=second docker-compose -p second up -d appcontract_number进行分组,以识别案件,并且有两个count > 1需要最早删除,因此我应用了min 。

我无法将其作为删除查询运行。我对Access和SQL脚本还很陌生。

contract_start_date

3 个答案:

答案 0 :(得分:1)

尝试这种方法,在子查询中,确定要删除的记录 not

DELETE 
    *
FROM 
    Gas_Data
WHERE 
    Gas_Data.CONTRACT_START_DATE Not IN
    (SELECT 
        Max(T.CONTRACT_START_DATE)
    FROM 
        Gas_Data As T
    WHERE 
        T.CONTRACT_NUMBER = Gas_Data.CONTRACT_NUMBER)

当然,请先备份。

答案 1 :(得分:0)

请考虑以下内容:

delete from gas_data a 
where exists 
(
    select top 1 * from gas_data b 
    where 
    a.contract_number = b.contract_number and 
    a.contract_start_date < b.contract_start_date
)

对于每条记录,以上内容将测试数据集中是否存在至少另一条合同编号相等且开始日期较晚的记录。如果存在这样的记录,则会删除先前的记录。

在运行delete查询之前,始终保留数据备份。

答案 2 :(得分:-1)

尝试:

td[row].innerHTML = price.toPrecision(price.toFixed(decimals).length