如何使用OleDB在Excel文件中避免空行?

3

我开始使用OleDB。我正在尝试从Excel文件(使用C#)中提取大量随机数据。这是我的查询:

SELECT * FROM NAMED_RANGE

但是我有很多空行,我用循环删除它们,但我并不是很喜欢这种方式,有没有可能只选择至少有一个单元格填充的行?

最好的问候,

Alex


你是否事先知道哪些行/列可能有数据?你对表格的内容完全没有任何期望吗? - DonBoitnott
唯一的循环是当连续10行为空时,接下来的行也将为空,直到结束。 - Alex
1个回答

5

只需更改SQL查询语句:

SELECT * FROM NAMED_RANGE WHERE [YourColumnTitle] IS NOT NULL

或者如果[F1]是您的列:

SELECT * FROM NAMED_RANGE WHERE F1 IS NOT NULL

感谢Reband先生。

1
如果Excel文件没有列标题,您可以引用以“F”开头的列数,例如 WHERE F1 IS NOT NULL - mr.Reband
1
这里的问题是,除非您确切地知道可能包含数据的列数,否则您将不知道如何构建这样的SQL。 - DonBoitnott
这对于一个空的“列”来说没问题,但是我有空的“行”:/ - Alex
3
一个空的“行”无非就是一组空的“列”。这个解决方案可行,但由于涉及未知数量的列,因此很繁琐。 - DonBoitnott
@DonBoitnott 好的,我明白了。我处理30列,所以我猜我得写成“F1不为空...并且F30不为空”。 - Alex
2
@Alex 不幸的是,除非你对要输入的行有更多了解,否则那就是你所能做的最好的了。就我个人而言,我宁愿选择全部选择并在代码循环中执行,但这只是我的想法。 - DonBoitnott

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接