我需要根据行的值删除重复的行,这是在对列的顺序进行排序之后.

我有一个有数百万行的表,为了方便起见,我只对一个‘FileNo_’进行了过滤(我最终会删除该过滤器).

SELECT   TOP (100) PERCENT [File No_], [Line No_], [Created on]
FROM         dbo.[Shipment Serv_ Fin_ Status]
WHERE     ([File No_] = N'TA-P200081258')
ORDER BY [File No_], [Line No_] DESC, [Created on] DESC

这是查询的结果(current results)

File No_ Line No_ Created on
TA-P200081258 10000 2020-11-12 00:00:00.000
TA-P200081258 30000 2020-11-12 00:00:00.000
TA-P200081258 40000 2020-11-12 00:00:00.000
TA-P200081258 50000 2020-11-12 00:00:00.000
TA-P200081258 60000 2021-01-27 00:00:00.000
TA-P200081258 70000 2021-01-27 00:00:00.000
TA-P200081258 80000 2021-01-27 00:00:00.000
TA-P200081258 90000 2021-01-27 00:00:00.000
TA-P200081258 10000 2021-02-02 00:00:00.000
TA-P200081258 20000 2021-02-02 00:00:00.000
TA-P200081258 30000 2021-02-02 00:00:00.000
TA-P200081258 40000 2021-02-02 00:00:00.000

但我想消除基于‘文件编号_’和‘行号_’列的重复项(在对3列进行排序之后).

所以结果应该是这样的(desired results):

File No_ Line No_ Created on
TA-P200081258 10000 2020-11-12 00:00:00.000
TA-P200081258 30000 2020-11-12 00:00:00.000
TA-P200081258 40000 2020-11-12 00:00:00.000
TA-P200081258 50000 2020-11-12 00:00:00.000
TA-P200081258 60000 2021-01-27 00:00:00.000
TA-P200081258 70000 2021-01-27 00:00:00.000
TA-P200081258 80000 2021-01-27 00:00:00.000
TA-P200081258 90000 2021-01-27 00:00:00.000
TA-P200081258 20000 2021-02-02 00:00:00.000

有人能帮帮忙吗?

推荐答案

我不能说,我完全正确地理解了你,但假设你有数据作为第一张图片,你想在第二张图片中达到效果,在这种情况下,如我所见,在列上创建的没有太多强调,那么你可以简单地

group by for line_no,file_no and find min/max or etc grouping function for created on column if it is same for each line_no,

SELECT
  file_no,
  line_no,
  MAX(created_on) AS created_on
FROM
  test
GROUP BY
  file_no, line_no

ORDER BY 
 file_no, line_no DESC, created_on DESC;

它将为您提供理想的结果.

Sql相关问答推荐

如何根据SQL中的列条件获取下一个时间戳?

Microsoft Access UNION将长文本字段限制为255个字符

SQL计数所有值在联接范围内的行

获取每个帖子的匹配关键字列表

我希望以正确的升序获取SQL结果.怎样才能得到它们?

值对于类型字符来说太长

查询每周数据(周一至周日),避免年度日期重叠

导出部分条形码字符串GS1-128

从结果SQL查询中排除空值

如何简化此PostgreSQL查询以计算平均值?

Haystack针相交-在元素最多的Haystack中查找集合

其中使用表名作为;行值;记录?

计算 ID 满足条件的次数

如何在第二个 INSERT 中使用第一个 INSERT 自动生成的 ID

SQL for Smarties 类型问题:从表中 Select 记录,并对某些值进行分组

在SQL中实现表格数据透视类型报表

COBOL\DB2作业(job)需要帮助?快来获取专业指导!

超过100名员工的连续行

如何在 PL/SQL 中区分返回的 XML 值?

在 Microsoft SQL Server 中,如何只为特定值保留不同的行?