标签: duplicate-removal

获取两行之间不同的列

我有一个company60 列的表。目标是创建一个工具来查找、比较和消除此表中的重复项。

示例:我找到 2 家可能相同的公司,但我需要知道这两行之间哪些值(列)不同才能继续。

我认为可以逐列比较 x 60,但我寻找更简单、更通用的解决方案。

就像是:

SELECT * FROM company where co_id=22
SHOW DIFFERENCE
SELECT * FROM company where co_id=33
Run Code Online (Sandbox Code Playgroud)

结果应该是不同的列名。

postgresql duplicate-removal postgresql-9.1

0
推荐指数
1
解决办法
1796
查看次数

LinkedHashSet不是删除重复项

我使用LinkedHashSet删除重复的条目.但对于以下自定义模型,Set仍保留重复条目.请帮我找到错误.覆盖equals方法有什么问题吗?对于您的类型信息,我只在他们的电话,类型和状态相同时处理两个节点等于.

public class BlockNode { 
    public int id;
    public int type;
    public int status;
    public String phone;
    public String date;
    public String content;

    @Override
    public boolean equals(Object o) {
        return this.toString().equals(((BlockNode)o).toString());
    }

    @Override
    public String toString() {
        return "number:" + phone + " type:" + type + " status:" + status + "\n"; 
    }
}
Run Code Online (Sandbox Code Playgroud)

java collections set duplicate-removal linkedhashset

-1
推荐指数
1
解决办法
1082
查看次数

使用唯一用户输入填充数组

我有一个如下定义的类:在这个类中,我有一个菜单,用户可以在其中添加新的Car.当他们选择此选项时,将提示以下内容:public class CarHireSystem {

  private static final Car[] carList = new Car[100];

  private static int carCount = 0;

  System.out.print("Enter car ID: ");
  String carID = sc.nextLine();
  System.out.print("Enter car description: ");
  String cardescription = sc.nextLine();
  System.out.print("Enter hire fee: $");
  Double hireFee = sc.nextDouble();
  sc.nextLine();
  carList[carCount] = new Car(carID,carDescription,hireFee);
  carCount++; 
Run Code Online (Sandbox Code Playgroud)

我想要一种方法来验证输入到阵列中的车辆ID尚未被用户输入并输入错误消息(如果已输入)并返回主菜单.该数组最初是空的.如何使用boolean或do while循环执行此操作.

java arrays duplicate-removal

-1
推荐指数
1
解决办法
141
查看次数

如何使光标更快

我已将此光标写入佣金报告.会发生什么是佣金来自一个表,记录是另一个表.我根据某些标准匹配两个(没有完全匹配).问题是存在记录的重复.当我将佣金与records表格匹配时,可能会导致重复这些重复.因此,代表获得更多报酬.另一方面,佣金表中也有重复,但这些都是有效的,因为它们简单意味着账户已经支付了2个月.

我写了这个查询,但需要5分钟才能运行.我在记录表中有50,000条记录,在佣金表中有100,000条记录.有什么方法可以改进这个游标吗?

/* just preparation of cursor, this is not time consuming */
CREATE TABLE #result
  (
     repid         INT,
     AccountNo     VARCHAR(100),
     supplier      VARCHAR(15),
     CompanyName   VARCHAR(200),
     StartDate     DATETIME,
     EndDate       DATETIME,
     Product       VARCHAR(25),
     commodity     VARCHAR(25),
     ContractEnd   DATETIME,
     EstUsage      INT,
     EnrollStatus  VARCHAR(10),
     EnrollDate    DATETIME,
     ActualEndDate DATETIME,
     MeterStart    DATETIME,
     MeterEnd      DATETIME,
     ActualUsage   INT
  )

DECLARE @AccountNo VARCHAR(100)
DECLARE @supplier VARCHAR(10)
DECLARE @commodity VARCHAR(15)
DECLARE @meterstart DATETIME
DECLARE @meterEnd DATETIME
DECLARE @volume FLOAT
DECLARE @RepID INT
DECLARE @Month INT
DECLARE @Year INT

SET …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server-2005 cursor duplicate-removal

-2
推荐指数
1
解决办法
2407
查看次数