从数据库随机查询出一批数据并排序输出——C#中DataTable技术学习

本文详细介绍了在C#中如何使用DataTable的Select方法进行数据查询和排序。通过示例代码展示了根据条件筛选和排序数据的过程,以及如何处理 BETWEEN AND 操作。还提到了其他数据排序方法,如使用DataView和Clone。
摘要由CSDN通过智能技术生成
    //=============================================================
    //功能: 根据状态获得相关的信息
    //参数: nType             :状态(0正常,1特价,3推荐)
    //参数: nCount           :要返回的数据条数 
    //返回: 信息
    //=============================================================
     public static DataTable GetResultInfoByType(int nType, int nCount)
    {
        //int randnCount = nCount +10;这里可以增加参数多查询数据
        //随机查询数据
        strSql = "Select top " + nCount + " * From [Table_] 
                 Where State =1 AND Type=" + nType + " 
                 Order By NEWID()";
        CDBConnect dbconn = new CDBConnect();
        DataTable resultDataTable = dbconn.CreateDataTable(strSql);
        dbconn.Close();
        
        //DataTable.Select(string,string)用法:前一个是过滤字段,后面是排序字段(这儿可以升序和降序排序默认asc)
         DataRow[] rows = resultDataTable.Select("Columns=filterColumns","orderColumn1 desc,orderColumn2 desc");
        //这里注意若没有第一个参数要写成.Select("","orderColumn1 desc,orderColumn2 desc");形式
         //这个是克隆原来的DataTable       
        DataTable tempDataTable = resultDataTable.Clone();
        //清空不用说了吧
         tempDataTable.Clear();
        //把排好序的datarow要用导入行的方式DataTable.ImportRow(DataRow)
        foreach (DataRow row in rows)
            tempDataTable.ImportRow(row);
        
        //如果只要输出前几个,用下面代码
         //for (int i = 0; i < nCount; i++)
        //{
        //    tempDataTable.ImportRow((DataRo
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值