我想实现的效果如下:第一列 - 日期
第二列 - 查询条件
第三列 - 名称
2014-1-4 8 A
2014-1-5 8.5 A
2014-1-6 9 A
2014-1-7 6 A
2014-1-10 5 A
2014-1-11 8 A
2014-1-12 6 A
2014-1-13 10 A
2014-1-14 7 A
2014-1-18 8 A
2014-1-19 7 A
2014-1-22 8 A
2014-1-4 18 B
2014-1-5 16 B
2014-1-8 29 B
2014-1-9 36 B
2014-1-10 25 B
2014-1-11 18 B
2014-1-12 26 B
2014-1-13 19 B
2014-1-14 17 B
2014-1-18 18 B
2014-1-19 17 B
2014-1-22 18 B
上面是我截取的部分数据,我需要根据数据的顺序特征查询到是属于哪个名称的值,并能告诉我时间段;
例:已知 18,16,29 这3个数,需要结果为:“B :2014-1-4至2014-1-8”
因为日期列不是连贯日期,目前我用的办法是
Dim drs As New List(of DataRow) = DataTables(Tablename).SQLSelect(“条件一”)
然后在从drs中逐个遍历,每条记录都先判断时间,加1天有没有记录,如果没有就再加1天,直到有记录然后判断记录的值是否符合条件二,以此类推,这样的查询思路,如果数据少的话这样效率还可以,但是目前我的数据有百万条,名称也有几百个,请问有没有更好的思路能让我的查询效率更高一些?
[此贴子已经被作者于2014-12-9 11:26:51编辑过]