首先创建了一个SQL Server数据库作为测试的数据库,建立表并填入测试数据

数据库:SQL Server

数据库名:Blog

表名:Test

注:数据库的连接可以使用“dbl”文件测试,具体使用百度即可。

1.将数据库的数据全部查询到datagridview

语句:select * from Test

   private void button1_Click(object sender, EventArgs e)
  {
       string connstr = "Data Source=LONG-PC\\LONG;Initial Catalog=Blog;User ID=long;Password=longtao";
       string cmdstr="select * from Test";

       SqlConnection conn = new SqlConnection(connstr);
       conn.Open();

       SqlCommand cmd = new SqlCommand();
       cmd.CommandText = cmdstr;
       cmd.Connection = conn;
       SqlDataAdapter adap = new SqlDataAdapter(cmd);
       DataSet ds = new DataSet();
       adap.Fill(ds);
       dataGridView1.DataSource = ds.Tables[].DefaultView;
  }

2.查询数据库的部分数据并显示到datagridview

语句: string cmdstr = "select 姓名,年龄 from Test";

  private void button2_Click(object sender, EventArgs e)
  {
      string connstr = "Data Source=LONG-PC\\LONG;Initial Catalog=Blog;User ID=long;Password=longtao";
      string cmdstr = "select 姓名,年龄 from Test";

      SqlConnection conn = new SqlConnection(connstr);
      conn.Open();

      SqlCommand cmd = new SqlCommand();
      cmd.CommandText = cmdstr;
      cmd.Connection = conn;
      SqlDataAdapter adap = new SqlDataAdapter(cmd);
      DataSet ds = new DataSet();
      adap.Fill(ds);
      dataGridView1.DataSource = ds.Tables[].DefaultView;
  }

3.使用列别名显示数据

语句: string cmdstr = "select 姓名 as name,年龄 as age from Test";

注:语句中的“as”关键词,可以使用空格代替

   private void button3_Click(object sender, EventArgs e)
   {
       string connstr = "Data Source=LONG-PC\\LONG;Initial Catalog=Blog;User ID=long;Password=longtao";
       string cmdstr = "select 姓名 as name,年龄 as age from Test";

       SqlConnection conn = new SqlConnection(connstr);
       conn.Open();

       SqlCommand cmd = new SqlCommand();
       cmd.CommandText = cmdstr;
       cmd.Connection = conn;
       SqlDataAdapter adap = new SqlDataAdapter(cmd);
       DataSet ds = new DataSet();
       adap.Fill(ds);
       dataGridView1.DataSource = ds.Tables[].DefaultView;
  }

4.使用列计算

语句:string cmdstr = "select 姓名,年龄,语文,数学,英语,语文+数学+英语 as 总分 from Test";

   private void button4_Click(object sender, EventArgs e)
   {
      string connstr = "Data Source=LONG-PC\\LONG;Initial Catalog=Blog;User ID=long;Password=longtao";
      string cmdstr = "select 姓名,年龄,语文,数学,英语,语文+数学+英语 as 总分 from Test";

      SqlConnection conn = new SqlConnection(connstr);
      conn.Open();

      SqlCommand cmd = new SqlCommand();
      cmd.CommandText = cmdstr;
      cmd.Connection = conn;
      SqlDataAdapter adap = new SqlDataAdapter(cmd);
      DataSet ds = new DataSet();
      adap.Fill(ds);
      dataGridView1.DataSource = ds.Tables[].DefaultView;
   }

5.限定查询数值范围大小

语句:string cmdstr = "select 姓名,年龄,语文,数学,英语,语文+数学+英语 as 总分 from Test where (语文+数学+英语)>215";

   private void button5_Click(object sender, EventArgs e)
   {
       string connstr = "Data Source=LONG-PC\\LONG;Initial Catalog=Blog;User ID=long;Password=longtao";
       string cmdstr = "select 姓名,年龄,语文,数学,英语,语文+数学+英语 as 总分 from Test where (语文+数学+英语)>215";

       SqlConnection conn = new SqlConnection(connstr);
       conn.Open();

       SqlCommand cmd = new SqlCommand();
       cmd.CommandText = cmdstr;
       cmd.Connection = conn;
       SqlDataAdapter adap = new SqlDataAdapter(cmd);
       DataSet ds = new DataSet();
       adap.Fill(ds);
       dataGridView1.DataSource = ds.Tables[].DefaultView;
   }

6.通配符

“_”  :代表一个字符

"%" :代表多个字符

"[]"  :代表范围

"[^]”:非括号范围内的单个字符

“distinct”:去除重复记录

7.排序取前2

语句:string cmdstr = "select top 2 姓名,年龄,语文,数学,英语,语文+数学+英语 as 总分 from Test order by (语文+数学+英语) desc";

   private void button6_Click(object sender, EventArgs e)
   {
       string connstr = "Data Source=LONG-PC\\LONG;Initial Catalog=Blog;User ID=long;Password=longtao";
       string cmdstr = "select top 2 姓名,年龄,语文,数学,英语,语文+数学+英语 as 总分 from Test  order by (语文+数学+英语) desc";

       SqlConnection conn = new SqlConnection(connstr);
       conn.Open();

       SqlCommand cmd = new SqlCommand();
       cmd.CommandText = cmdstr;
       cmd.Connection = conn;
       SqlDataAdapter adap = new SqlDataAdapter(cmd);
       DataSet ds = new DataSet();
       adap.Fill(ds);
       dataGridView1.DataSource = ds.Tables[].DefaultView;
    }

8.排序取前百分之50

语句:string cmdstr = "select top 50 percent 姓名,年龄,语文,数学,英语,语文+数学+英语 as 总分 from Test order by (语文+数学+英语) desc";

   private void button7_Click(object sender, EventArgs e)
   {
        string connstr = "Data Source=LONG-PC\\LONG;Initial Catalog=Blog;User ID=long;Password=longtao";
        string cmdstr = "select top 50 percent 姓名,年龄,语文,数学,英语,语文+数学+英语 as 总分 from Test order by (语文+数学+英语) desc";

        SqlConnection conn = new SqlConnection(connstr);
        conn.Open();

        SqlCommand cmd = new SqlCommand();
        cmd.CommandText = cmdstr;
        cmd.Connection = conn;
        SqlDataAdapter adap = new SqlDataAdapter(cmd);
        DataSet ds = new DataSet();
        adap.Fill(ds);
        dataGridView1.DataSource = ds.Tables[].DefaultView;
   }

9.分组查询、统计

语句:string cmdstr = "select 班级,sum(语文)as 语文总分,sum(数学) as 数学总分,sum(英语) as 英语总分,sum(语文+数学+英语) as 总分 from Test group by 班级";

  private void button8_Click(object sender, EventArgs e)
  {
      string connstr = "Data Source=LONG-PC\\LONG;Initial Catalog=Blog;User ID=long;Password=longtao";
      string cmdstr = "select 班级,sum(语文)as 语文总分,sum(数学) as 数学总分,sum(英语) as 英语总分,sum(语文+数学+英语) as 总分 from Test group by 班级";

      SqlConnection conn = new SqlConnection(connstr);
      conn.Open();

      SqlCommand cmd = new SqlCommand();
      cmd.CommandText = cmdstr;
      cmd.Connection = conn;
      SqlDataAdapter adap = new SqlDataAdapter(cmd);
      DataSet ds = new DataSet();
      adap.Fill(ds);
      dataGridView1.DataSource = ds.Tables[].DefaultView;
   }

10.聚合函数

AVG:数字表达式中所有值的平均值

COUNT:选定的行数

MAX:表达式中的最高值

MIN:表达式中的最低值

STDEV:表达式中所有值的统计标准偏差

STDEVP:表达式中所有值的填充统计标准偏差

VAR:表达式中所有值的统计方差

VARP:表达式中所有值的填充统计方差

SUM:数字表达式中所有值的和

11.数据处理函数

LEN:限定字段长度

Ltrim、Rtrim:去处空格函数

left、right:字符函数

ABS:数字函数

Year、Month:日期函数

12.多表分组查询

语句:string cmdstr = "select t.姓名,t.性别,t.年龄,p.name,p.age from Test t,practice p where t.姓名=p.name group by t.姓名,t.性别,t.年龄,p.name,p.age";

注:该功能将同一数据库下的不同数据表进行合并查询,取不同数据表的数据显示到同一个datagridview中

   private void button11_Click(object sender, EventArgs e)
   {
       string connstr = "Data Source=LONG-PC\\LONG;Initial Catalog=Blog;User ID=long;Password=longtao";
       string cmdstr = "select t.姓名,t.性别,t.年龄,p.name,p.age from Test t,practice p  where t.姓名=p.name group by t.姓名,t.性别,t.年龄,p.name,p.age";

       SqlConnection conn = new SqlConnection(connstr);
       conn.Open();

       SqlCommand cmd = new SqlCommand();
       cmd.CommandText = cmdstr;
       cmd.Connection = conn;
       SqlDataAdapter adap = new SqlDataAdapter(cmd);
       DataSet ds = new DataSet();
       adap.Fill(ds);
       dataGridView1.DataSource = ds.Tables[].DefaultView;
   }

C# 数据库查询总结的更多相关文章

  1. 用struts2标签如何从数据库获取数据并在查询页面显示。最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量。

    最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变 ...

  2. [转]C#反射,根据反射将数据库查询数据和实体类绑定,并未实体类赋值

    本文来自:http://www.cnblogs.com/mrchenzh/archive/2010/05/31/1747937.html /****************************** ...

  3. 各数据库查询前N条记录的SQL语句

    sql在不同数据库查询前几条数据 1. ORACLE SELECT * FROM TABLE_NAME WHERE ROWNUM <= N;  HQL: from table_name t or ...

  4. Atitit  DbServiceV4qb9 数据库查询类库v4 新特性

    Atitit  DbServiceV4qb9 数据库查询类库v4 新特性     V4新特性 安全特性,屏蔽了executeUpdate,使用v2版 Sql异常转换,特别转换了DuplicateEnt ...

  5. C#与mysql做ASP.NET网页数据库查询速度测试

    两种方法是:1,使用mysql数据库的存储过程:2,C#编码,做网页后台与mysql数据库连接,前台测试显示测试过结果下面我将分别讲解两种方法的具体实现. 1,使用mysql数据库的存储过程插入万条大 ...

  6. 第九十九天上课 PHP TP框架 数据库查询和增加

    在Model文件夹下创建模型,文件命名规则 : 表名Model.class.php <?php namespace Home\Model; use Think\Model; class yong ...

  7. mysql数据库查询pdo的用法

    最早的php对mysql数据库查询是mysql和mysqli方法,后来php的新版本进一步封住了该方法,于是又pdo,抛开php框架,使用pdo查询数据,使用也是相当简便 <?php ini_s ...

  8. 下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作

    下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作 User::find()->all(); 此方法返回所有数据: User::findOne($id); 此方法返回 主键 id=1 的 ...

  9. iBatis.Net(C#)数据库查询

    引用请注明http://www.cnblogs.com/13590/archive/2013/03/14/2958735.html  摘要:查询是数据库SQL语言的核心,本文介绍了通过iBatis.N ...

  10. 【MYSQL】创建虚表来辅助数据库查询

    在进行数据库查询时,有时需要用到对既有的数据表进行多表查询得出的临时条件的数据表,就可以暂时创建成为虚表,并赋予简单明了的字段名以及临时表名. 例题a:查询出每门课程低于平均成绩的学生姓名.课程名称. ...

随机推荐

  1. Mongodb的Samus驱动

    最近开始学习Mongodb方面的东西.. 看到有很多博主都说MongoDB的第三方驱动 Samus 对Linq的支持比较好..能够降低学习的成本..所以就想从这里开始.. 但是弊端在我学习了一半的时候 ...

  2. 【转】跟我学Kafka之NIO通信机制

    from:云栖社区 玛德,今天又被人打脸了,小看人,艹,确实,相对比起来,在某些方面差一点,,,,该好好捋捋了,强化下短板,规划下日程,,,引以为耻,铭记于心. 跟我学Kafka之NIO通信机制   ...

  3. eclipse的安装环境及eclipse下maven的配置安装

    之前安装zookeeper的时候,就配置过linux下的java环境,即安装过linux JDK,配置过JAVA_HOME   和PATH  变量,,, 现在要运行一个java客户端,来消费kafka ...

  4. asp.net core 中的MD5加密

    尝试了很长时间,但是一直报core 5 不可用,当时就崩溃了. 但是偶然的机会 我添加了Microsoft.AspNet.Identity 之后.MD5就好用了. 估计是这个报实现了core5下的MD ...

  5. jquery 获取和设置 checkbox radio 和 select option的值?

    ============== 获取和设置 checkbox radio 和 select的值? === val()函数, 其名字就表达了 它的意思: 他就是= value 的简写! val就是valu ...

  6. dreamwaver的动态相关文件 工具栏搜索

    dreamwaver是很好的编辑工具, 用过很多ide, 对php,js, css代码来说, dw确实是很好很方便的一个工具 php本身设置了很多的 预定义常量, 函数, 可以用来获取当前运行php的 ...

  7. hdu4976 A simple greedy problem. (贪心+DP)

    http://acm.hdu.edu.cn/showproblem.php?pid=4976 2014 Multi-University Training Contest 10 1006 A simp ...

  8. 记录在xx公司被考核的15天及自己的感想

    在大学有两件事让我很遗憾. 第一:在2013年7月我和自己的前任女朋友分手,这是两年前的事了,我们谈了七个月. 第二:在2015年4月我被xx公司淘汰了,正如我的前任女朋友是我遇到的最好女孩,这家公司 ...

  9. codevs4096 删数问题

    题目描述 Description 键盘输入一个高精度的正整数N,去掉其中任意S个数字后剩下的数字按原左右次序将组成一个新的正整数.编程对给定的N 和S,寻找一种方案使得剩下的数字组成的新数最小. 输入 ...

  10. Cotex-M3内核STM32F10XX系列时钟及其配置方法

    一.背景 最近做个项目,需要使用STM32,还是以前一样的观点,时钟就是MCU心脏,供血即时钟频率输出,想要弄明白一个MCU,时钟是一个非常好的切入点.言归正传,网上已经有太多大神详述过STM32的详 ...