我是asp.net的新手。我有一张excel表,里面有很多重复记录。我需要单独显示重复的记录,说这些是重复的。我该怎么做。 是否有特定的查询只能获得重复项。请帮助!!
答案 0 :(得分:1)
首先,我建议您使用“ExcelReaderFactory”来阅读excel记录。
VB.Net Code
Dim excelReader As IExcelDataReader = Nothing
Dim result As DataSet = Nothing
Dim stream As FileStream = Nothing
stream = File.Open(Server.MapPath("FilePath.xls"), FileMode.Open, FileAccess.Read)
excelReader = ExcelReaderFactory.CreateBinaryReader(stream)
result = excelReader.AsDataSet()
stream.Close()
stream.Dispose()
excelReader.Close()
result.Dispose()
C#代码
IExcelDataReader excelReader = null;
DataSet result = null;
FileStream stream = null;
stream = File.Open(Server.MapPath("FilePath.xls"), FileMode.Open, FileAccess.Read);
excelReader = ExcelReaderFactory.CreateBinaryReader(stream);
result = excelReader.AsDataSet();
stream.Close();
stream.Dispose();
excelReader.Close();
result.Dispose();
在数据表中获取数据后,您可以使用select函数。
最后处理你的数据表。
答案 1 :(得分:0)
好的,你没有提供很多关于你遇到麻烦的细节,所以我将为你提供你需要做的很好的概述。然后你可以查看它,通过示例,看看你是否仍然感到困惑或遗失任何东西。
基本上,您将使用ADO.NET Jet OLEDB连接到Excel来查询数据。基本上你会做SELECT
陈述。现在我不相信你可以做SELECT DISTINCT
,这是最简单的(请尝试以验证),但你至少可以做一个SELECT
声明来获取所有你的将数据转换为DataTable
。
在DataTable
中获得数据后,您将应用一个视图,该视图将允许您过滤掉重复的数据。基本代码类似于:
ds.Tables["YourTable"].DefaultView.ToTable(true,”uniqueID”);
您可以根据自己的需要进行调整。以下是一些帮助您入门的链接: