SQL 条件从 CSV 中选择
本文关键字:选择 CSV 条件 SQL | 更新日期: 2023-09-27 18:35:13
我正在尝试使用 SQL 查询SELECT * FROM ["+fileName+"];
从 CSV 文件加载数据。当我选择所有无条件的数据时,它按预期工作,但是,我想省略任何包含字符串".BAK"在第一列中。有没有人对我如何实现这一目标有任何见解?
我已经尝试了WHERE NOT LIKE '%.BAK%'
条件的变化,但我无法让它们按预期工作。
谢谢
如果您的 CSV 文件在第一行中包含列标题(例如)
firstHeaderName,secondHeaderName,thirdHeaderName, ......
那么要执行的查询很简单
string cmdText = "SELECT * FROM [" + filename + "] WHERE firstHeaderName NOT LIKE '%.bak%'";
如果您在 CSV 的第一行中没有带有列标题的行,则情况类似。
在本例中,连接字符串如下所示
string constr = @"Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=d:'temp';
Extended Properties='text;HDR=No;FMT=Delimited'";
并且您的命令文本应使用常规名称 F1 引用第一列
string cmdText = "SELECT * FROM [" + filename + "] WHERE F1 NOT LIKE '%.bak%'";
约定是使用 F1(第一列)、F2(第二列)等命名列。