Get min, max and avg records from a database using SQL


I have a Student table in a database and that has smarks column. We can use SQL Min, Max and Avg functions to get minimum, maximum, and average values. I am using OleDb data provider to connect to the database.



using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

namespace Display_min_max_avg_records_in_textbox

{

public partial class Form1 : Form

{

string ConnectionString = System.Configuration.ConfigurationSettings.AppSettings["dsn"];

OleDbCommand com;

OleDbDataAdapter oledbda;

DataSet ds = new DataSet();

string str;

public Form1()

{

InitializeComponent();

}

private void Form1_Load(object sender, EventArgs e)

{

OleDbConnection con = new OleDbConnection(ConnectionString);

con.Open();

str = "select * from student";

com = new OleDbCommand(str, con);

oledbda = new OleDbDataAdapter(com);

ds = new DataSet();

oledbda.Fill(ds, "student");

dataGridView1.DataSource = ds;

dataGridView1.DataMember = "student";

con.Close();

}

private void button1_Click(object sender, EventArgs e)

{

OleDbConnection con = new OleDbConnection(ConnectionString);

con.Open();

str = "select max(smarks)from student";

com = new OleDbCommand(str, con);

textBox1.Text = com.ExecuteScalar().ToString();

con.Close();

}

private void button2_Click(object sender, EventArgs e)

{

OleDbConnection con = new OleDbConnection(ConnectionString);

con.Open();

str = "select min(smarks)from student";

com = new OleDbCommand(str, con);

textBox2.Text = com.ExecuteScalar().ToString();

con.Close();

}

private void button3_Click(object sender, EventArgs e)

{

OleDbConnection con = new OleDbConnection(ConnectionString);

con.Open();

str = "select avg(smarks)from student";

com = new OleDbCommand(str, con);

textBox3.Text = com.ExecuteScalar().ToString();

con.Close();

}

}

}