C# DataTable Select 用法

 DataTable 用法

select:

表达式,排序查询:

searchString += "CreatTime < '" + EndTime.Text + " 23:59:59'";

Select(searchString, "CreatTime desc");

模糊查询:

Select("NAME LIKE '%" + SearchStr + "%'")    '只是从数据表中映射

与条件:

DataTable dt1;

DataView dv = new DataView(dt1);

dv.RowFilter = "palte='1' AND errorcode='1'";

DataTable dt_New = dv.ToTable();

 

.C#中DataTable技术学习 2009-09-10 14:37:18 阅读1496 评论0   字号:大中小 订阅 .

1.在DataTable中执行DataTable.Select("条件")返回DataTable;

// <summary>
// 执行DataTable中的查询返回新的DataTable
// </summary>
// dt 是源数据DataTable
// condition 是查询条件

DataTable newdt = new DataTable();
newdt = dt.Clone(); // 克隆dt 的结构,包括所有 dt 架构和约束,并无数据;
DataRow[] rows = dt.Select(conditions); // 从dt 中查询符合条件的记录;
foreach (DataRow row in rows)  // 将查询的结果添加到dt中;
{
       newdt.Rows.Add(row.ItemArray);
}

有网友说也可以这样:(大家可以试试)

DataTable newdt = new DataTable();
newdt=dt.Clone();
DataRow[] dr = dt.Select(condition);
for(int i=0;i<dr.Length;i++)
{
newdt.ImportRow((DataRow)dr[i]);
}

2.关于DataTable.Select();

Select方法:   
  Select();//全部查出来   
  Select(过滤条件);//根据过滤条件进行过滤,如Select("columnname1   like   '%xx%'");   
  Select(过滤条件,排序字段);//过滤,并排序,如Select("columnname1   like   '%xx%'",columnname2);

完成一个查询,返回一个DataTable后,很多时候都想在查询结果中继续搜索。这时可以使用DataTable.Select方法对结果进行再查询。 
Select方法有4个重载,我们经常用到的就是DataTable.Select(String) ;

下面就说说带一个参数的DataTable.Select(String):
这个String的参数是查询的限定式。相当于SQL查询语言中的WHERE语句(不含WHERE),其语法符合SQL语言语法。 (网友的说法)我觉得就是类似sql的语法而已。

不过我试了试,不支持BETWEEN AND,举个成功的例子:

//FromTime 和ToTime 是两个DateTime类型的变量;occurTime是dTable里面的列名;

DataRow[] datarows = dTable.Select("occurTime >= '" + FromTime + "' and occurTime <= '" + ToTime+"'");

DataTable.Select()方法里面支持简单的过滤和排序,不支持复杂的条件过滤和排序。里面的字符串必须是列名和数据,以及>,<,=,<>等关系运算符。举几个例子:

 DataRow[]   row   =   Detailtb.Select("WZMC='"+MaterialName+"' and   CZ='"+MaterialTexture+"   and   GG='"+MaterialSpecs+"'");   

DataTable.Select("City Like 'B%'");

DataTable.Select("name='" + a +"'");

一定要注意单引号的问题;我之前就是把变量用双引号括起来了,一直出错,后来在网上查,发现要先有双引号,再用单引号;即‘“变量”’;

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: C#中的DataTable.Select方法是用于从DataTable中选择符合指定条件的行的方法。它的语法如下: DataTable.Select(string filterExpression, string sortExpression, DataViewRowState rowState) 其中,filterExpression是用于筛选行的表达式,sortExpression是用于排序的表达式,rowState是用于指定行状态的枚举值。 例如,以下代码将从名为"myTable"的DataTable中选择所有"Age"列大于等于18的行,并按照"Name"列升序排序: DataTable myTable = new DataTable(); // 假设myTable已经填充了数据 DataRow[] selectedRows = myTable.Select("Age >= 18", "Name ASC"); 这样,selectedRows数组中就包含了符合条件的行。 ### 回答2: 我作为一名AI语言模型,对于"c"这个问题需要进一步的了解。根据上下文,我猜测可能是在讨论计算机科学中的编程语言C。因此,我将围绕这个主题展开回答。 C是一种高级编程语言,最初由Dennis Ritchie于1972年在贝尔实验室开发。它在计算机科学和工程领域中得到了广泛的应用,包括操作系统,编译器,数据库,游戏等等。C语言被称为高级语言,因为它比机器语言更易于编写和理解,同时又比其他高级语言(如Java、Python)更接近底层机器指令。 C语言的特点是灵活性强,运行速度快,可移植性好,所以在系统底层开发中应用广泛。许多经典的操作系统(如Unix,Linux和Windows)和库都是用C语言编写的。此外,许多编程语言(如C++和Objective-C)都是在C语言的基础上开发的。 C语言也有一些缺点,例如它对程序员的要求非常高,需要精确的语法和细节,否则程序可能会出错。此外,C语言相对较底层,需要更多的代码实现与其他高级语言相比相同的功能。 总之,C语言在计算机科学中的重要性不言而喻。尽管现在出现了许多其他优秀的编程语言,C语言在掌握系统底层编程,提高编程能力和理解计算机工作原理方面仍然是一个不可或缺的工具。 ### 回答3: 我很抱歉,但是您没有给出问题或提示,我无法提供具体的回答。如果您能提供更多信息,我将非常乐意为您提供帮助和支持。如果您需要任何其他帮助,请随时与我联系。谢谢!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值