/// <summary>
        /// 将所选字段的唯一值复制到一个新的 DataTable。 
        /// <para>如果字段包含 NULL 值,目标表中的记录还包含 NULL 值</para>
        /// </summary>
        /// <param name="sourceTable">源数据表</param>
        /// <param name="filterExpression">检索条件</param>
        /// <param name="fieldName">唯一值的字段名</param>
        /// <returns></returns> 
        public DataTable SelectDistinct(DataTable sourceTable, string filterExpression, string fieldName)
        {
            DataTable dt = new DataTable(sourceTable.TableName);
            dt.Columns.Add(fieldName, sourceTable.Columns[fieldName].DataType);

object lastValue = null;
            foreach (DataRow dr in sourceTable.Select(filterExpression, fieldName))
            {
                if (lastValue == null || !(ColumnEqual(lastValue, dr[fieldName])))
                {
                    lastValue = dr[fieldName];
                    dt.Rows.Add(new object[] { lastValue });
                }
            }
            return dt;
        }
        private bool ColumnEqual(object A, object B)
        {
            if (A == DBNull.Value && B == DBNull.Value)
                return true;
            if (A == DBNull.Value || B == DBNull.Value)
                return false;
            return (A.Equals(B));
        }

转载于:https://www.cnblogs.com/EasyData/archive/2010/01/20/1652173.html

获取DataTable字段唯一值(DISTINCT)相关推荐

  1. Entity Framwork(EF) 7——在Controller内获取指定字段的值

    Entity Framwork(EF) 7--在Controller内获取指定字段的值 一.开发背景: 在用户登录的时候,验证用户和密码是否正确.验证通过后将用户名和用户ID保存下来以便后续数据更新时 ...

  2. ArcEngine获取字段唯一值的三种方法

    在做GIS数据处理时,我们经常需要获取某个字段的唯一值.我在这里总结了三种方法,下面分别进行说明. 方法一:读取表记录 这种方法就是逐条读取记录,然后选用合适的数据结构进行查重,它的好处就在于:不必去 ...

  3. solr 查询字段唯一值_《Solr实战》之一

    本文记录笔者在阅读<Solr实战>的读书笔记,将笔者认为重要的内容摘录出来. Solr擅长处理的数据类型 以文本为中心 读主导 文档被读取的次数远大于被创建和更新的次数 面向文档 灵活的模 ...

  4. 获取某一列_Excel VBA 8.2 获取多列唯一值,不用肉眼,VBA帮你快速搞定

    前景提要(文末提供源码下载) 昨天我们学习了针对单列的数据进行获取唯一值的方法,今天我们提升下难度,来尝试下获取已多列为参照物,获取唯一值的方法,昨天有很多小伙伴说还可以用字典的方法更加的简单,其实, ...

  5. elasticsearch获取一个字段的值_Elasticsearch,你觉得自己懂了多少,看看这篇文章吧...

    Elasticsearch分析与检索功能实操 虽然通过文档_id可以获取到文档,但_id字段一般都是一个无意义的值,在实际应用中更多地是使用文档其它有意义字段做检索.Elasticsearch提供一个 ...

  6. ABAP 获取屏幕字段的值 搜索帮助联动动态查询SAP

    获取屏幕上的值,优化搜索帮助做一个联动的查询,就需要获取其他再屏幕上输入的值 用到这个函数DYNP_VALUES_READ DATA: LT_DYNPREAD_2 TYPE STANDARD TABL ...

  7. thinkphp回调的php调用db类,请问thinkphp中model类自动完成功能 回调函数能不能获取其他字段的值?...

    http://www.thinkphp.cn/api/source-class-Model.html#975 protected function _validationFieldItem($data ...

  8. BAP 使用DYNP_VALUES_READ来获取屏幕字段值

    有的时候我们在程序中需要使用到屏幕字段的某些值,比如说一个search help的取数逻辑中要使用到已经输入的其他输入框中的值,但是结果往往不如人意,我们可能捕捉不到其他字段的值,从而无法得到我们想要 ...

  9. ABAP 使用DYNP_VALUES_READ来获取屏幕字段值

    今早有朋友讨论DYNP_VALUES_READ的问题,自己也找了些资料,学习了一下,记录下来有待以后使用. 有的时候我们在程序中需要使用到屏幕字段的某些值,比如说一个search help的取数逻辑中 ...

最新文章

  1. 迭代var()内置函数的时候出现RuntimeError: dictionary changed size during iteration的解决办法...
  2. 解决AndroidStudio2.0导入eclipse项目时卡死的问题
  3. 功能更新|DAS推出全局Workload优化功能,实现SQL自动诊断
  4. iOS之深入解析类Class的底层原理
  5. 9.整型安全操作.rs
  6. python 物理引擎 摩擦力_参赛作品2-phenom的2D物理引擎
  7. Bootstrap 多级下拉菜单
  8. js打乱数字顺序吗_js如何将打乱的一维数组按顺序排列(不用封装好的js方法)?...
  9. c#不可忍受之慢——谁是罪魁祸首
  10. 【转】 Apache分析脚本
  11. content=IE=Edge是什么意思?
  12. 【错误记录】IntelliJ IDEA 编译 Groovy 项目报错 ( gradle-resources-test:XX: java.lang.NoClassDefFoundError: org )
  13. ShuipFCMS -- 简单强大内容管理系统
  14. 力扣刷题 DAY_67 回溯
  15. Predicting microbial interactions through computational approaches
  16. 2022华为机试真题 C++ 实现【数大雁】
  17. ROS机器人021-机器人命令行发送cmd_vel话题及/cmd_vel geometry_msgs/Twist示例
  18. windows搭建RN环境
  19. ADS designguide无法使用解决办法
  20. 在50户人家的狗中寻找病狗数量的趣味题目(详细解释)

热门文章

  1. QPS、TPS、并发用户数、吞吐量的关系
  2. Net中的Request和Response对象的理解
  3. 嵌入式C语言基础(二)
  4. 02如何抓住重点,系统高效地学习数据结构与算法?
  5. 安装pywin32时:ImportError: DLL load failed: %1 不是有效的 Win32 应用程序和 DLL load failed...
  6. TSPITR方式数据库找回误操作丢失的数据
  7. 【笔记】spring定时器时间配置实例
  8. python面向对象基础语言进阶
  9. Fiddle:使用断点:bpu,bpafter
  10. 360的下一代SOC是这个样子的