performance - 快速比较列表与自身
问题描述
我的数据库中有一个巨大的列表(100k 条目)。每个条目都包含一个 ID、文本和一个日期。
我创建了一个函数来尽可能地比较两个文本。现在不需要它的样子。
有没有一种“好”的方法可以通过文本从列表中删除“重复”(尽可能)?目前,我正在遍历列表两次,并将每个条目与每个条目进行比较,除了自身之外的 id。
解决方案
如果您的问题是当您在表中插入一行时......您可以包含唯一约束。
Postgresql CREATE TABLE table1 ( id serial PRIMARY KEY, txt VARCHAR (50), dt timestamp, UNIQUE(txt) );
Oracle CREATE TABLE table1 ( id numeric(10) NOT NULL, txt varchar2(50) NOT NULL, 日期时间戳, CONSTRAINT txt_unique UNIQUE (txt) );
推荐阅读
- php - 用不同的值加入同一个表两次
- eclipse-rcp - 产品导出时缺少依赖项
- ruby - 为什么 Rails 控制台中的“重新加载!”会导致“类的超类不匹配”(Rails 4)
- javascript - onClick执行一次js函数
- dictionary - Ocaml Map to_seq 用法
- r - sjPlot::plot_xtab 错误标记因子水平的问题
- android - Android:如何实现一个通过队列消息不断更新的文本视图?
- c# - 正则表达式组表达式不捕获内容
- javascript - 饼图未更新 D3.JS
- amazon-web-services - 为什么不同运行时的 AWS lambda 计费方式不同?