实现该功能是用了DataView的筛选功能,DataView表示用于排序、筛选、搜索、编辑和导航的 DataTable 的可绑定数据的自定义视图。 这里做了一个简单易懂的Demo来讲述该方法。

1.建两张表

2.读数据库数据到dt显示到dataGridView

3.用DataView选择表dt中数据并返回表dtTemporary

4.运行效果

 
namespace UbdTest
{
public partial class Demo : Form
{
DataTable dt = new DataTable();//数据源
DataTable dtTemporary = new DataTable();//接收返回的所需数据 public Demo()
{
InitializeComponent();
} private void Demo_Load(object sender, EventArgs e)
{
GetData();//调用获取数据方法获得数据
}
/// <summary>
/// 从数据库获取数据方法
/// </summary>
private void GetData()
{ //建立数据库链接
string sqlconString = "Data Source=(local);Initial Catalog=Demo;User ID=sa;Password=sa";//创建连接字符串sqlconString
SqlConnection objcon = new SqlConnection(sqlconString);//创建sql数据连接对象objcon
objcon.Open();//打开数据库链接 //创建一个DataAdapter对象,它表示数据库和DataSet对象之间的链接
SqlDataAdapter dataAdapter = new SqlDataAdapter("Select*From 工作表", objcon); //创建DataSet对象的一个实例,为整个DataSet提供一个名称,然后才能开始加载数据
DataSet ds = new DataSet("Demo");//test为数据来源数据库 //用SqlDataAdapter类提供的Fill方法向DataSet加载数据
dataAdapter.Fill(ds, "工作表"); dt = ds.Tables[0];
} private void button1_Click(object sender, EventArgs e)
{
dataGridView1.DataSource = dt;
} private void button2_Click(object sender, EventArgs e)
{
DataView dataview = dt.DefaultView;
dtTemporary = dataview.ToTable(true,"日期"); dataGridView2.DataSource = dtTemporary;
} private void button3_Click(object sender, EventArgs e)
{
DataView dataview = dt.DefaultView;
dtTemporary = dataview.ToTable(true, "工作内容"); dataGridView3.DataSource = dtTemporary;
}

  

c#获取DataTable某一列不重复的值,或者获取某一列的所有值的更多相关文章

  1. 获取对固定列不重复的新DataTable

    获取对固定列不重复的新DataTable  ///<summary> /// 获取对固定列不重复的新DataTable /// </summary> ///<param ...

  2. 获取DataTable某一列的所有值

    /// <summary> /// 获取某一列的所有值 /// </summary> /// <typeparam name="T">列数据类型 ...

  3. 【转载】C#如何获取DataTable中某列的数据类型

    在C#的数据表格DataTable的操作中,有时候因为业务需要,我们需要获取到DataTable所有列或者某一列的数据类型,此时我们可以通过DataTable中的Columns属性对象的DataTyp ...

  4. C#中获取DataTable某一列的值转换为集合

    直接使用 //Linqvar l1 = (from d in dt.AsEnumerable() select d.Field<int>("ID")).ToList() ...

  5. (原创)一步步优化业务代码之——从数据库获取DataTable并绑定到List<Class>

    一,前言 现实业务当中,有一个很常见的流程:从数据库获取数据到DataTable,然后将DataTable绑定到实体类集合上,一般是List<Class>,代码写起来也简单:遍历+赋值就可 ...

  6. oracle_删除同一列的重复数据

    <!--删除同一列的重复数据 rowid 在orcle中 数据的物理地址---> delete from tbl_over_picture_alarm a where rowid not ...

  7. sql server显示某一列中有重复值的行

    sql server查询一张表 ,显示某一列中有重复值的行,可以这样写: Select * From 表名 where 列名 in(Select 列名 From Table group by 列名 h ...

  8. 获取DataTable前几条数据

    #region 获取DataTable前几条数据 /// <summary> /// 获取DataTable前几条数据 /// </summary> /// <param ...

  9. Java获取随机数获取制定范围指定个数不重复的随机数

    一.JDK中提供的两种方式 1.Math类中的random()方法public static double random()返回带正号的 double 值,该值大于等于 0.0 且小于 1.0 [0. ...

  10. Excel查看某列的重复值

    例如: 当查看的是B列的重复值时:=IF(COUNTIF(B:B,B1)>1,"重复","")

随机推荐

  1. Java 多线程(二)synchronized和volatile

    脏读: 脏读指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据.总的来说取到的数据是其实是被更改过的,但还没有保存到数 ...

  2. 错误:com.android.builder.packaging.DuplicateFileException: Duplicate files copied

    File2: C:\Users\guoxw\.gradle\caches\modules-2\files-2.1\org.jsoup\jsoup\1.10.3\b842f960942503cf1abb ...

  3. scp 命令简明介绍

    安全复制(英语:Secure copy,缩写SCP)是指在本地主机与远程主机或者两台远程主机之间基于Secure Shell(SSH)协议安全地传输电脑文件."SCP"通常指安全复 ...

  4. C#中SQL参数传入空值报错解决方案

    C#中的null与SQL中的NULL是不一样的,SQL中的NULL用C#表示出来就是DBNull.Value. 注意:SQL参数是不能接受C#的null值的,传入null就会报错. 下面我们看个例子: ...

  5. markdown写作软件推荐

    最近发现了一款不错的编辑器,而且是全平台支持的.与其它一些 markdown 编辑器最大的不一样是——所见即所得,不再是一边源文件一遍预览的方式了. 总的说来 Typora 很赞,推荐一波. 点此前往 ...

  6. JS面向对像编程四—— prototype 对象

    http://blog.csdn.net/fanwenjieok/article/details/54575560 大部分面向对象的编程语言,都是以“类”(class)作为对象体系的语法基础.Java ...

  7. Windows 错误 0x80070570

    Windows程序运行或者删除文件提示错误0x80070570:文件或目录损坏且无法读取. 环境 Windows 10 解决办法 管理员权限打开cmd,输入chkdsk 盘符: /f,提示输入Y,修复 ...

  8. [置顶] openHAB 部分代码结构 UML 图

    openHAB 部分代码结构 UML 图 ModelRepository: ItemRegistry: ItemUIProvider: WebAppServlet:

  9. [CodeForces]1006F Xor Path

    双向搜索. 水div3的时候最后一道题由于C题死活看不懂题 来不及做F了Orz.. 因为n,m是20,双向搜索一下,求个到中间的Xor值的方案,统计一下即可. 时间复杂度\(O(2^{21})\) 好 ...

  10. php 与 nginx 的两种处理方式

    1.IP:Port 监听方式 php-fpm docker pull PHP:2.4-alpine nginx.conf fastcgi_pass 127.0.0.1:9000; php-fpm 在容 ...